vim 是 vi 的高级版本,它是一款非常强大的文本编辑器,它有三种模式,命令行模式,输入模式和末行模式,熟练使用 vim 可以大幅度提升文本编辑效率。语法格式:vim 文件名
值得我们注意的是:
在 vim 中,鼠标不能像在 windows 那样,我们可以把光标移动到任意位置,只能通过四个方向键,和其他字母键移动光标。
1、新建文件
我们新建 test.txt 文件,并打开它
vim test.txt

vim 文本编辑器三种模式切换图如下

2、命令行模式
我们如何进入命令行模式
vim 文件名,不管文件是否存在,它都会进入命令行模式,在这个模式下,按 i,a,o,都可以进入输入模式,然后我们就可以输入内容啦。

命令行模式常用的操作如下
1)基本移动
记住四个快捷首字母 hjkl(左下上右),对应左方向键,下方向键,上方向键,右方向键,分别向左,向下,向上,向右移动;
数字 0 移动到行首,美元符号(shift + 4) $ 移动到行尾;
字母 w 往后移动到下个单词首,字母 b 往前移动到上个单词首;
gg 直接跳到文件第一行,G 跳到最后一行。
2)删除和替换
字母 x 删除光标覆盖的字符,字母 s 删除光标覆盖的字符,并进入输入模式;
dd 删除光标所在行,ndd 删除 n 行,dw 删除光标所在处到单词尾的内容;
替换某个字母,把光标定位到要替换的字母处,按 r 后,输入替换后的字母。
3)复制和粘贴
yy 复制当前行,nyy 从当前行开始,复制 n 行,yw 复制光标所在处到单词尾的内容;
字母 p 将复制的内容粘贴到光标下方,字母 P 将复制的内容粘贴到光标上方。
4)搜索
键入 /abc 查找字符串 abc ,按下回车,往下查找按 n ,往上查找按 N;
相反,输入 ?abc ,按下回车,往下查找按 N ,往上查找按 n 。
5)其他
字母 u 撤销,撤销前一个编辑命令的操作结果,返回至上一步编辑状态,多次按 u 返回到最原始状态。
命令行模式,我们输入 /root ,可以查找文中所有的 root 字符

批量注释实现方式
1)在命令行模式下,光标移到行首,按 ctrl+v 进入可视化模块;
2)此时按上下键移动选择需要注释的行,然后按 shift+i 进入输入模式;
3)接着按 shift+# 注释开始行,最后按下键盘左上方的 esc 键,完成多行注释。
我们按 ctrl+v ,底下出现 VISUAL BLOCK 代表进入可视化模块,左边的白色块说明已经选中多行行首

3、输入模式
命令行模式切换到输入模式,有三种方式
1)按 i 从光标处,进入输入模式;
2)按 a 追加进入输入模式,会移动到光标的后一个位置;
3)按 o 在光标的下一行创建新的一行。
输入模式退出到命令行模式
在输入模式下,按 esc,退出到命令行模式。
无论我们使用哪种方式进入输入模式,底下都会出现 INSERT 字眼,此时代表现在是输入模式

4、末行模式
命令行模式和末行模式间的切换
在命令行模式,按下 shift +冒号,进入末行模式;
在末行模式下,按 esc ,切换到命令行模式;
在末行模式下,输入 wq (或 x)保存退出,输入 q! 不保存退出,输入 q 退出。
如果底下出现 :代表现在状态是末行模式

末行模式常用操作
1)set nu 显示行号,set nonu 去掉行号;
2)输入数字 n ,定位到文件的第 n 行;
3)输入 %s/旧字符串/新字符串/,把文件中每一行的第一个旧字符串,替换成新的字符串,如果要全部替换,在最后的斜杠 / 加 g ;
4)导入文件 /root/test.txt 内容,输入 r /root/test.txt,按回车,就完成了内容导入;
5)调用 linux 命令, 键入 !命令 ,比如 !which ls ,查找 ls 命令的位置 。
显示文件行号

以上是常用的用法,下面我使用 GPT 帮我回答该命令的用途:

学了就行动起来吧,更多命令,后续更新。
更多命令请前往 :Linux 专栏内容合集