搜索
首页运维linux运维Linux中怎么使用vi文本编辑器

Linux中怎么使用vi文本编辑器

May 29, 2023 pm 02:41 PM
linuxvi

一.vi文本编辑器

配置文件是Linux操作系统的显著特征之一,其作用有点类似于Windows操作系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式。

1.使用vi文本编辑器

vi是一个功能强大的全屏幕文本编辑工具,一直以来都作为类UNIX操作系统的默认文本编辑器,vim是vi文本编辑器(简称vi编辑器)的增强版本,在vi编辑器的基础上扩展了很多实用的功能,但是习惯上也将vim称为vi,为了使用方便,可以设置一个命令别名,将vi指向vim程序(本文中以vim程序为例)具体操作如下:

[root@localhost ~]# alias vi='/usr/bin/vim'
[root@localhost ~]# which -a vi vim

2.vi编辑器的工作模式

vi编辑器是工作在字符终端环境下的全屏幕编辑器,因此编辑界面相对比较简单,没有为用户提供鼠标操作和菜单系统,而是通过按键命令实现相应的编辑和操作功能,在v编辑界面中可以使用三种不同的工作模式,即命令模式,输入模式和末行模式,在不同的模式中能够对文件进行的操作也不相同。

命令模式:启动vi编辑器后默认进入命令模式。在该模式下,你可以执行光标移动、字符串查找、删除、复制、粘贴文件内容等相关操作。主要操作为录入文件内容的输入模式,可对文本文件正文进行修改或添加新内容。在 vi 编辑器的输入模式下,最后一行会显示状态提示信息“--INSERT--”。在末行模式下,可以配置vi编辑器的环境、保存文件、退出编辑器,并进行文件内容的查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现冒号”:”提示符。

在vi编辑环境中,有三种状态,分别是命令模式、输入模式和末行模式。通过按下不同的键可以在这些状态之间进行切换。例如,从命令模式按:(冒号)键可以进入末行模式,按a,i,o等键可以进入输入模式:在输入模式、末行模式均可按Esc键返回命令模式,如图所示。

Linux中怎么使用vi文本编辑器

 认识了vi编辑器的不同编辑模式(状态)以后,下面分别介绍在命令模式、末行模式中的常见操作方法(输入模式用于录入文本内容,不做特别介绍)。

3.命令模式中的基本操作

通过执行单独的“vi”命令,您可以进入v编辑器的命令模式,并查看相关版本信息,如下图所示。但更常见的使用方法是指定要编辑的文件名作为参数,若该文件不存在,则vi根据该文件名称打开一个新的空文件。

Linux中怎么使用vi文本编辑器

 在学习vi编辑器的基本操作时,建议复制一个内容较多的系统配置文件进行练习,而不要直接去修改系统文件,以免发生失误造成系统故障。

例如以下操作把系统配置文件/etc/yum.conf复制为当前目录下的vitest.file文件,然后用vi编辑器打开vitest.file文件进行编辑。

[root@localhost ~]# cp /etc/yum.conf ./vitest.file
[root@localhost ~]# vi vitest.file

在vi编辑器的命令模式中,可以输入特定的按键(称为vi操作命令注意区别于Linux操作系统命令)进行操作,主要包括模式切换、光标移动、复制、删除、粘贴、文件内容查找及保存和退出等操作,这里只介绍一些最基本且常用的按键命令。

(1)模式切换

在命令模式中,按a.i.o等键可以快速切换至输入模式,同时确定插入点的方式和位置,以便录入文件内容,需要返回命令模式时,按Esc键即可。常见的几个模式切换键及其作用如下。

a:在当前光标位置之后插入内容。A:在光标所在行的末尾(行尾)插入内容。i:在当前光标位置之前插入内容。I:在光标所在行的开头(行首)插入内容。o:在光标所在行的后面插入一个新行。O:在光标所在行的前面插入一个新行。

(2)移动光标

光标方向的移动,直接按↑,↓,←,→一西个方向键完成相应的光标移动。

题页移动

按Page Dewn键或Crl+F组合键向下期动一整页内容。
技Pagt lip或Cr1+8组合键向上翻动一整页内容。

行内快速跳转

按Horme键成“键,散字0键将元标快速鹏转到本行的行首。接End键或1键将光标快速跳转到本行的行尾。在上述按键操作中,PageDown,Pagn Up,homm,End及方向键同样也可在w的输入模式中使用。

入行间快速跳转

使用按键命令1G或者0可跳转到文件内容的第1行。使用按键命令G可跳转到文件的最后一行。按下键盘上的特定按键,可以将光标移动到所选文件的某一行(将“二”用数字替代)。

为了便于查看行间期转效果,这里先学习如何在v编辑器中是示行号,只要切换到末行模式并
执行如下的”set cu”命令即可显示行号,执行"set nonu"命令可以取消量示行号.

Linux中怎么使用vi文本编辑器

 显示行号后的vi编辑器界面显示格式如下(每行开头的数字即行号):

Linux中怎么使用vi文本编辑器

(3)复制、粘贴和删除

删除操作。

您可以通过按下“乘”键或“删除”键来删除光标所在位置的单个字符。使用按键命令dd删除当前光标所在行,使用#dd的形式还可以删除从光标处开始的#行内容(其中“#”号用具体数字替换)。使用按键命令d删除当前光标之前到行首的所有字符。使用按键命令ds删除当前光标处到行尾的所有字符。

复制操作,使用按键命令Yy复制当前行整行的内容到剪贴板,使用#Yy的形式还可以复制从光标处开始的#行内容(其中“#”号用具体数字替换).复制的内容需要粘贴后才能使用。

粘贴操作。在vi编辑器中,前一次被删除或复制的内容将会保存到剪切板缓冲区中,按p键即可将缓冲区中的内容粘贴到光标位置处之后,按P键则会粘贴到光标位置处之前。

(4)查找文件内容

在命令模式中,按/键后可以输入指定的字符串,从当前光标处开始向后进行查找(按?键则向前查找).完成查找后可以按n、N键在不同的查找结果中进行选择,例如,输入“/yum”,按Enter键后将查找出文件中的“yum”字符串并高亮显示,光标自动移动至第一个查找结果处,按n键可以移动到下一个查找结果,如图所示。

Linux中怎么使用vi文本编辑器

(5)撤销编辑及保存和退出

在对文件内容进行编辑时,有时候需要对一些失误的编辑操作进行撤销,这时可以使用按键u,U键,其中,u键命令用于取消最近一次的操作,并恢复操作结果,可以多次重复按υ键恢复已进行的多步操作;U键命令用于取消对当前行所做的所有编辑。按下ZZ键可以同时保存当前文件的更改并退出Vi编辑器。

4.末行模式中的基本操作

在命令模式中按:键可以切换到末行模式,vi编辑器的最后一行中将显示”:提示符,用户可以在该提示符后输入特定的末行命令,完成如保存文件,退出编辑器,打开新文件,读取其他文件内容及字符串替换等丰富的功能操作。

 (1)保存文件及退出vi编辑器

保存文件,对文件内容进行修改并确认以后,需要执行如下的“w”命令进行保存。

Linux中怎么使用vi文本编辑器

若需要另存为其他文件,则需要指定新的文件名,必要时还可以指定文件路径。

例如,执行如下的“:w/root/newfile操作将把当前编辑的文件另存到/root 目录下,文件名为newfile. 

Linux中怎么使用vi文本编辑器

退出编辑器。需要退出vi编辑器时,可以执行“:q命令,若文件内容已经修改却没有保存,则仅使用”;q”命令将无法成功退出,这时需要使用如下的”q!”命令强行退出(不保存即退出)。

Linux中怎么使用vi文本编辑器

保存并退出。既要保存文件又要退出vi编辑器可以使用一条末行命令“:wq”或“:x”实现,其效果与命令模式中的ZZ命令相同,具体操作如下: 

Linux中怎么使用vi文本编辑器

(2)打开新文件或读入其他文件内容 

打开新的文件进行编辑。当使用当前的 vi 编辑器并执行":e新的文件"这样的末行命令时,你可以编辑(Edit)一个新文件。

例如,执行如下的‘:e~/initial-setup-ks.cfg”操作将直接打开当前用户宿主目录中的initial-setup-ks.cfg文件进行编辑。

:e ~/initial-setup-ks.cfg

在当前文件中读入其他文件内容,执行“r其他文件”形式的末行命令可以读入(Read)其他文件中的内容,并将其复制到当前光标所在位置。

例如,执行如下的“r/etc/filesystems操作将把系统文件/etc/filesystems中的内容复制到当前文件中。

:r /etc/filesystems

 (3)替换文件内容

在vi编辑器的末行模式中,能够将文件中特定的字符串替换成新的内容,当需要大批量修改同一内容时,使用替换功能将大大提高编辑效率,使用替换功能时的末行命令格式如下:

:[替换范围]sub/旧的内容/新的内容[/g]

在上述替换格式中,主要关键字为sb(Substitute,替换).也可以简写为s.替换范围是可选部分,默认时只对当前行内的内容进行替换,一般可以表示为以下两种形式。

%:在整个文件内容中进行查找并替换。n.m;在指定行数范围内的文件内容中进行查找并替换。

替换格式中最末尾的/g部分也是可选内容,表示对替换范围内每一行的所有匹配结果都进行替换,省略/g时将只替换每行中的第一个匹配结果。

例如,若要将文档中第5行~第15行中的“initdefault”字符串替换为“DEFAULT”,可以执行以下操作:

:5,15 s /initdefault/DEFAULT/g

当需要对整个文档范围进行查找替换操作时,需要使用“%”符号表示全部,例如,以下操作将会把当前文件中所有的“initdefault”字符串替换为“bootdefault”

:% s /initdefault/bootdefault/g

以上是Linux中怎么使用vi文本编辑器的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:亿速云。如有侵权,请联系admin@php.cn删除
Linux中的维护模式:系统管理员指南Linux中的维护模式:系统管理员指南Apr 26, 2025 am 12:20 AM

维护模式在Linux系统管理中扮演关键角色,帮助进行系统修复、升级和配置变更。1.进入维护模式可以通过GRUB菜单选择或使用命令“sudosystemctlisolaterescue.target”。2.在维护模式下,可以执行文件系统修复和系统更新等操作。3.高级用法包括重置root密码等任务。4.常见错误如无法进入维护模式或挂载文件系统,可通过检查GRUB配置和使用fsck命令修复。

Linux中的维护模式:何时以及为什么使用它Linux中的维护模式:何时以及为什么使用它Apr 25, 2025 am 12:15 AM

使用Linux维护模式的时机和原因:1)系统启动问题时,2)进行重大系统更新或升级时,3)执行文件系统维护时。维护模式提供安全、控制的环境,确保操作的安全性和效率,减少对用户的影响,并增强系统的安全性。

Linux:基本命令和操作Linux:基本命令和操作Apr 24, 2025 am 12:20 AM

Linux中不可或缺的命令包括:1.ls:列出目录内容;2.cd:改变工作目录;3.mkdir:创建新目录;4.rm:删除文件或目录;5.cp:复制文件或目录;6.mv:移动或重命名文件或目录。这些命令通过与内核交互执行操作,帮助用户高效管理文件和系统。

Linux操作:管理文件,目录和权限Linux操作:管理文件,目录和权限Apr 23, 2025 am 12:19 AM

在Linux中,文件和目录管理使用ls、cd、mkdir、rm、cp、mv命令,权限管理使用chmod、chown、chgrp命令。1.文件和目录管理命令如ls-l列出详细信息,mkdir-p递归创建目录。2.权限管理命令如chmod755file设置文件权限,chownuserfile改变文件所有者,chgrpgroupfile改变文件所属组。这些命令基于文件系统结构和用户、组系统,通过系统调用和元数据实现操作和控制。

Linux中的维护模式是什么?解释了Linux中的维护模式是什么?解释了Apr 22, 2025 am 12:06 AM

MaintenancemodeInuxisAspecialBootenvironmentforforcalsystemmaintenancetasks.itallowsadMinistratorStoperFormTaskSlikerSettingPassingPassingPasswords,RepairingFilesystems,andRecoveringFrombootFailuresFailuresFailuresInamInimAlenimalenimalenrenmentrent.ToEnterMainterMainterMaintErmaintErmaintEncemememodeBoode,Interlecttheboo

Linux:深入研究其基本部分Linux:深入研究其基本部分Apr 21, 2025 am 12:03 AM

Linux的核心组件包括内核、文件系统、Shell、用户空间与内核空间、设备驱动程序以及性能优化和最佳实践。1)内核是系统的核心,管理硬件、内存和进程。2)文件系统组织数据,支持多种类型如ext4、Btrfs和XFS。3)Shell是用户与系统交互的命令中心,支持脚本编写。4)用户空间与内核空间分离,确保系统稳定性。5)设备驱动程序连接硬件与操作系统。6)性能优化包括调整系统配置和遵循最佳实践。

Linux体系结构:揭示5个基本组件Linux体系结构:揭示5个基本组件Apr 20, 2025 am 12:04 AM

Linux系统的五个基本组件是:1.内核,2.系统库,3.系统实用程序,4.图形用户界面,5.应用程序。内核管理硬件资源,系统库提供预编译函数,系统实用程序用于系统管理,GUI提供可视化交互,应用程序利用这些组件实现功能。

Linux操作:利用维护模式Linux操作:利用维护模式Apr 19, 2025 am 12:08 AM

Linux的维护模式可以通过GRUB菜单进入,具体步骤为:1)在GRUB菜单中选择内核并按'e'编辑,2)在'linux'行末添加'single'或'1',3)按Ctrl X启动。维护模式提供了一个安全环境,适用于系统修复、重置密码和系统升级等任务。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),