linux(干货不解释) 中vi编辑器的用法详细介绍

一、vim的介绍

配置文件是 Linux 操作系统的显著特征之一,其作用有点类似于 Windows 操作系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式。以便更好地管理和维护系统中的各种配置文件,就用到Linux 字符操作界面中的文本编辑器——vi。
vi 是一个功能强大的全屏幕文本编辑工具,一直以来都作为类 UNIX 操作系统的默认文本编辑器。vim 是 vi 文本编辑器(简称 vi 编辑器)的增强版本,在 vi 编辑器的基础上扩展了很多实用的功能,但是习惯上也将 vim 称为 vi。

二、vi 编辑器的工作模式

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

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

命令模式、输入模式和末行模式是 vi 编辑环境的三种状态,通过不同的按键操作可以在不同的模式间进行切换。命令模式按:(冒号)键可以进入末行模式,按 a、i、o 等键可以进入输入模式;在输入模式、末行模式均可按 Esc 键返回命令模式,
在这里插入图片描述

在这里插入图片描述

三、命令模式中的基本操作

1、模式切换

在命令模式中,按 a、i、o 等键可以快速切换至输入模式,同时确定插入点的方式和位置,以便录入文件内容。需要返回命令模式时,按 Esc 键即可。

常用的几个模式切换键及其作用:

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

2、移动光标

1)光标方向的移动。
直接按↑、↓、←、→四个方向键完成相应的光标移动。

  • h 或 向左箭头键(←) 光标向左移动一个字符
  • j 或 向下箭头键(↓) 光标向下移动一个字符
  • k 或 向上箭头键(↑) 光标向上移动一个字符
  • l 或 向右箭头键(→) 光标向右移动一个字符
    2)翻页移动
  • 按 Page Down 键或 Ctrl+F 组合键向下翻动一整页内容。
  • 按 Page Up 键或 Ctrl+B 组合键向上翻动一整页内容。

3)行内快速跳转

  • 按 Home 键或^键、数字 0 键将光标快速跳转到本行的行首。
  • 按 End 键或$键将光标快速跳转到本行的行尾。
  • H 光标移动到这个屏幕的最上方那一行的第一个字符
  • M 光标移动到这个屏幕的中央那一行的第一个字符
  • L 光标移动到这个屏幕的最下方那一行的第一个字符
  • “+” 光标移动到非空格符的下一行
  • “-” 光标移动到非空格符的上一行

4)行间快速跳转

  • 使用按键命令 1G 或者 gg 可跳转到文件内容的第 1 行。
  • 使用按键命令 G 可跳转到文件的最后一行。
  • 使用按键命令#G 可跳转到文件中的第#行(其中“#”号用具体数字替换)

3、复制、粘贴、删除操作

1)复制操作
使用按键命令 yy 复制当前行整行的内容到剪贴板,使用#yy 的形式还可以复制从光标处开始的#行内容(其中“#”号用具体数字替换)。复制的内容需 要粘贴后才能使用。
2)粘贴操作
在 vi 编辑器中,前一次被删除或复制的内容将会保存到剪切板缓冲区中,

  • 按 p 键即可将缓冲区中的内容粘贴到光标位置处之后一行。
  • 按 P 键则会粘贴到光标位置处之前一行。
  • J 将光标所在行与下一行的数据结合成同一行
  • [Ctrl]+r 重做上一个动作。
  • . 就是小数点,意思是重复前一个动作的意思。 如果你想要重复删除、重复贴上等等动作,按下小数点『.』就好了。

3)删除操作

  • 按 x 键或 Delete 键删除光标处的单个字符。
  • 使用按键命令 dd 删除当前光标所在行,使用#dd 的形式还可以删除从光标处开始的#行内容(其中“#”号用具体数字替换)。
  • 使用按键命令 d^删除当前光标之前到行首的所有字符。
  • 使用按键命令 d$或D 删除当前光标处到行尾的所有字符。
  • 删除的内容也会保留到粘贴板中,在执行过程中尽量做到先删除在复制粘贴。

4、查找文件内容

  • 在命令模式中按/键后可以输入指定的字符串,从当前光标处开始向后进行查找。
  • 按?键后可以输入指定的字符串,从当前光标处开始向前进行查找。
  • 完成查找后可以按 n、N 键在不同的查找结果中进行选择。
  • n表示下一个匹配到的位置。
  • N表示前一个匹配到的位子。

5、撤销编辑及保存和退出

在对文件内容进行编辑时,有时候需要对一些失误的编辑操作进行撤销,这时可以使用 按键命令 u、U 键。

  • u 键命令用于取消最近一次的操作,并恢复操作结果,可以多次重复按 u 键恢复已进行的多步操作;
  • -U 键命令用于取消对当前行所做的所有编辑。
  • 当需要保存当前的文件内容并退出 vi 编辑器时,可以使用按键命令 ZZ。
  • ZQ 不保存,强制退出。效果等同于 :q!。

四、输入模式中的基本操作

在命令模式下按下i、a、o就进入了输入模式。
在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • ESC,退出输入模式,切换到命令模式

五、末行模式中的基本操作

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

1、保存及退出vi编辑器

1)保存文件

  • 对文件内容进行修改并确认以后,需要执行如下的“:w”命令进行保存。
  • 若需要另存为其他文件,则需要指定新的文件名,并指定文件路径。格式为":w 文件路径"
    2)退出编辑器
  • 需要退出 vi 编辑器时,可以执行“:q”命令。
  • 若文件内容已经修改却没有保存,则仅使用“:q”命令将无法成功退出,这时需要使用如下的“:q!”命令强行退出(不保存即退出)。
    3)保存退出
  • 既要保存文件又要退出 vi 编辑器可以使用一条末行命令“:wq”或“:x” 实现,其效果与命令模式中的 ZZ 命令相同。

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

1)打开新的文件进行编辑

  • 在当前 vi 编辑器中,执行“:e 新的文件路径”形式的末行命令可以直接编辑新文件。
    2)在当前文件中读入其他文件内容
  • 执行“:r 其他文件路径”形式的末行命令可以读入(Read)其他文件中的内容,并将其复制到最后一行下面。

3、替换文件内容

在 vi 编辑器的末行模式中,能够将文件中特定的字符串替换成新的内容,当需要大批量修改同一内容时,使用替换功能将大大提高编辑效率。
替换功能的末行命令语法格式:
: [替换范围] sub /旧的内容/新的内容[/g]
替换范围有两种格式

  • 全文替换 %:在整个文件内容中进行查找并替换。
  • 范围替换 n,m:在指定行数范围内的文件内容中进行查找并替换。
  • 替换格式中最末尾的“/g”部分也是可选内容,表示对替换范围内每一行的所有匹配结果都进行替换,省略“/g”时将只替换每行中的第一个匹配结果。

4、显示行号

  • :set nu 显示行号,设定之后,会在每一行的前缀显示该行的行号。
  • :set nonu 与 set nu 相反,为取消行号。

猜你喜欢

转载自blog.csdn.net/wulimingde/article/details/109289423