Linux 系统是部署项目最常用到的服务器系统,在系统中进行相关配置时,我们总是需要对文件进行增删改等操作。Linux 系统中自带的文件编辑器是 Vim,需要熟练掌握 Vim 编辑器的使用,才能提升日常的开发效率。
Vim工作模式
- 正常模式
- 使用 vim file 命令后,我们进入文件的正常模式。
- 使用 :q / :wq / :wq! 等命令退出Vim。
- 插入模式
- 在正常模式下,使用 i / I / a / A / o / O 等进入插入模式。
- 使用 Esc 退出插入模式到正常模式中,可执行其他命令。
- 可视化模式
- 在正常模式下,执行 v 进入可视化模式(Visual),移动光标自由选择字符,使用 y 复制。
- 在正常模式下,执行 ctrl+v 进入块可视化模式(Visual block),移动选择目标块,使用 y 复制。
- 在正常模式下,执行 V 或 Shift+v 进入行可视模式(Visual line),移动选择目标行,使用 y 复制。
页面优化
进入正常模式下,可以:
- :set nu :显示行号。
- :set nonu :取消行号显示。
定位命令
在正常模式下,可以使用相关快捷键来实现文件内容的快速跳转:
- nh :本行中向右移动n个字符, h 等同于 <- ,可以搭配数字实现跳转指定数量的字符。
- nj :向下移动n行, j 等同于方向键下,可以搭配数字实现跳转指定数量的字符。
- nk :向上移动n行, k 等同于方向键上,可以搭配数字实现跳转指定数量的字符。
- nl :本行中向左移动n个字符, l 等同于 -> ,可以搭配数字实现跳转指定数量的字符。
- gg :定位到文本的第一行。
- G :定位到文本的最后一行。
- :n :定位到文本的第n行。
插入操作
- i :小写,在光标前插入内容。
- I :大写,在光标当前行开始处插入内容。
- a :小写,在光标后插入内容。
- A :大写,在光标当前行末尾处插入内容。
- o :小写,在光标当前行的下一行插入新行。
- O :大写,在光标当前行的上一行插入新行。
复制、粘贴和替换
- yy :复制当前行; nyy :复制n行。
- p :粘贴内容到光标之后。
- P :粘贴内容到光标之前。
- r :替换光标所在处的字符。
- R :从光标处开始替换,按 Esc 后结束。
使用Vim实现复制、粘贴内容的流程操作:
- 使用 vim file 打开编辑指定文件。
- 移动光标到需要复制的代码行首。
- 使用快捷键 V 或者 shift+v 进入行选择模式,默认选择当前行。
- 使用上下方向键移动选取更多行。
- 使用 y 复制或者 d 剪切选中内容。
- 移动光标到需要粘贴的位置,使用 p 粘贴内容到光标后或者使用 P 粘贴内容到光标前。
撤销和重做(撤销撤销)
- u :undo,取消上一步操作。
- Ctrl+r :redo,返回到undo之前,即撤销撤销。
删除操作
Linux的删除操作是将内容剪切到了粘贴板中,可以在其他处使用 p / P 命令进行粘贴。
- x :删除光标所在字符。
- nx :删除光标所在位置