Skip to content

第四章:VI/VIM 编辑器(重要) ​

1. VIM 是什么 ​

  • VI 是 Unix 操作系统和类 Unix 操作系统中最通用的文本
  • VIM 编辑器是从 VI 发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜 色辨别语法的正确性,方便程序设计。VIM 与 VI 编辑器完全兼容。

2. 测试数据准备 ​

  • 拷贝 /root/initial-setup-ks.cfg 到桌面
  • 使用 vim initial-setup-ks.cfg 命令打开该文件

image-20220615203012839

3. 一般模式 ​

​ 以 vi/vim 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可 以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档 案内容, 也可以使用『复制、粘贴』来处理你的文件数据

常用语法:

语法功能描述
yy复制光标当前一行
y 数字 y 或 者 数字yy复制一段(从第几行到第几行)
y$复制光标后面的内容
y^复制光标前面的内容
d$删除光标后面的内容
d^删除光标前面的内容
p箭头移动到目的行粘贴
u撤销上一步
dd删除光标当前行
d 数字 d删除光标(含)后多少行
x剪切一个字母,相当于 del
X剪切一个字母,相当于 Backspace
yw复制一个词
dw删除一个词
shift+6(^)移动到行头
shift+4($)移动到行尾
1+shift+g移动到页头,数字
shift+g移动到页尾
数字 + shift+g移动到目标行
r替换单个字符
R从光标开始依次替换字符
b跳到上一个词的词头
e跳到下一个词的词尾
w(shift+w)跳到下一个词的词头
ESC退出编辑模式
数字+shift+g跳到指定的行
gg 或 shift+h快速移动到文档顶端
G (shift+g)快速移动到文档底端
L(shift+l)快速移动到当前界面的底端
:set nu显示行号
:set nonu不显示行号

vi/vim键盘图

image-20220620114113873

4. 编辑模式 ​

​ 在一般模式中可以进行删除、复制、粘贴等的动作,但是却无法编辑文件内容的!要等到你按下【i,I, o,O,a,A】等任何一个字母之后才会进入编辑模式。

​ 注意了!通常在Linux中,按下这些按键时,在画面的左下方会出现 【INSERT或REPLACE】 的字样,此时才可以进行编辑。而如果要回到一般模式时,则必须要按下【Esc】这个按键即可退出编辑模式。

  • 进入编辑模式
按键功能
i当前光标前
a当前光标后
o当前光标行的下一行
I光标所在行最前
A光标所在行最后
O当前光标行的上一行
  • 退出编辑模式

​ 按 【Esc】键退出编辑模式,之后所在的模式为一般模式

5. 指令模式 ​

​ 在一般模式当中,输入【 : / ?】3个中的任何一个按钮,就可以将光标移动到最底下那 一行。

​ 在这个模式当中, 可以提供你【搜寻资料】的动作,而读取、存盘、大量取代字符、 离开 vi 、显示行号等动作是在此模式中达成的

  • 基本语法
命令功能
:w保存
:q退出
:!强制执行
:wq!强制保存退出
/要查找的词全局查找目标词汇(n 向下查找,N向上查找)
:noh取消高亮显示
:set nu显示行号
:set nonu关闭行号
😒/old/new替换当前行匹配到的第一个old 为 new
😒/old/new/g替换当前行匹配到的所有 old 为 new
:%s/old/new替换文档中每一行匹配到第一个 old 为 new
:%s/old/new/g替换文档中匹配到的所有 old 为 new
  • 实例实操

    • 强制保存退出
    mark
    :wq!

6. 模式间转换 ​

image-20220620113727123

Released under the MIT License.