vi 是所有 Unix 及 Linux 系统下标准的编辑器;
vim (全称:Vi IMproved):对 vi 做了扩展,具有语法高亮等功能;
vi 模式切换| 分类 | 输入 | 英文全称 | 操作 | 备注 |
| 模式切换 | vi 文件名 | 进入命令模式 | 常用 | |
| i | Insert | 进入插入模式 | 常用 | |
| Esc | 退回命令模式 | 常用 | ||
| : | 进入末行模式 | 常用 | ||
| :wq | Write / Quit | 保存并退回命令模式 | 常用 |
1. 移动光标
| 分类 | 输入 | 英文全称 | 操作 | 备注 |
| 行内移动 | h 或 ← | 光标向左移动一个字符 | 常用 | |
| j 或 ↓ | 光标向下移动一个字符 | 常用 | ||
| k 或 ↑ | 光标向上移动一个字符 | 常用 | ||
| l 或 → | 光标向右移动一个字符 | 常用 | ||
| 0(数字 0) 或 Home 键 | 光标移动到行首 | 常用 | ||
| $ 或 End 键 | 光标移动到行位 | 常用 | ||
| 数字 n + 空格键 | 光标向后移动 n 个字符 | |||
| 屏幕内移动 | Ctrl + f 或 Page Up 键 | Front | 向下翻一页 | 常用 |
| Ctrl + b 或 Page Down 键 | Back | 向上翻一页 | 常用 | |
| Ctrl + d | Down | 向下翻半页 | ||
| Ctrl + u | Up | 向上翻半页 | ||
| H (Shift + h) | Head | 光标移动到屏幕的第一行 | ||
| M (Shift + m) | Middle | 光标移动到屏幕的中间一行 | ||
| L (Shift + l) | Last | 光标移动到屏幕的最后一行 | ||
| + (加号) | 光标移动到下一行的非空格首字符 | |||
| - (减号) | 光标移动到上一行的非空格首字符 | |||
| 文件内移动 | G (Shift + g) | Global | 光标移动到文件的最后一行 | 常用 |
| 数字 n + G | 光标移动到文件的第 n 行 | 常用 | ||
| gg | 光标移动到文件的第 1 行 | 常用 | ||
| 数字 n + Enter | 光标向下移动 n 行 | 常用 |
2. 查找与替换
| 分类 | 输入 | 英文全称 | 操作 | 备注 |
| 查找 | /指定单词 | 向下查找指定单词 | 常用 | |
| ?指定单词 | 向上查找指定单词 | |||
| n | 光标移动到下一处查找到的单词 | 常用 | ||
| N (Shift + n) | 光标移动到上一处查找到的单词 | 常用 | ||
| 替换 | :开始行号,结束行号s/单词1/单词2/g | Global | 从开始行到结束行把单词1替换成单词2 | |
| :1,$s/单词1/单词2/g | 从第一行到最后一行把单词1替换成单词2 | 常用 | ||
| :%s/单词1/单词2/g | 从第一行到最后一行把单词1替换成单词2 | |||
| :%s/单词1/单词2/gc | 从第一行到最后一行把单词1替换成单词2, 在替换前提示确认是否替换 |
参考文档:
- 如何安装和使用纯文本编辑器 vi/vim | 《Linux就该这么学》
- Linux vi/vim | 菜鸟教程



