插入命令
| 命令 | 作用 |
|---|
| a | 在光标所在字符后插入 |
| A | 在光标所在行尾插入 |
| i | 在光标所在字符前插入 |
| I | 在光标所在行行首插入 |
| o | 在光标下插入新行 |
| O | 在光标上插入新行 |
定位命令
| 命令 | 作用 |
|---|
| :set nu | 设置行号 |
| :set nomu | 取消行号 |
| :n | 到第n行 |
| gg | 到第一行 |
| G | 到最后一行 |
| nG | 到第n行 |
| $ | 移至行尾 |
| 0 | 移至行首 |
删除命令
| 命令 | 作用 |
|---|
| x | 删除光标所在处字符 |
| nx | 删除光标所在处n个字符 |
| dd | 删除(剪切)光标所在行 |
| ndd | 删除(剪切)光标所在下n行 |
| dG | 删除光标所在行到文件末尾的内容 |
| D | 删除光标所在处到行尾的内容 |
| :n1,n2d | 删除指定范围内的行 |
复制和剪切命令
| 命令 | 作用 |
|---|
| yy | 复制当前行 |
| nyy | 复制当前行以下n行 |
| dd | 剪切当前行 |
| ndd | 剪切当前行以下n行 |
| p | 粘贴在当前光标所在行下 |
| P | 粘贴在当前光标所在行上 |
搜索、替换命令
| 命令 | 作用 |
|---|
| r | 取代光标所在处字符(只替换一个) |
| R | 从光标所在处开始替换字符(esc键结束) |
| u | 取消上一步操作 |
查找和替换命令
| 命令 | 作用 |
|---|
| /string | 搜索指定字符串(严格区分大小写) |
| n | 搜索指定字符串的下一个出现位置 |
| :%s/字符串a/字符串b/c | 全文将字符串a替换成字符串b(询问是否替换) |
| :n1,n2s/字符串a/字符串b/c | 在一定范围内将字符串a替换成字符串b(询问) |
| :%s/字符串a/字符串b/g | 全文将字符串a替换成字符串b |
| :n1,n2s/字符串a/字符串b/g | 在一定范围内将字符串a替换成字符串b |
注:若想在搜索时忽略大小写需要输入命令:set ic
保存退出命令
| 命令 | 作用 |
|---|
| :w | 保存修改 |
| :w new_name | 另存为新的文件名 |
| :wq | 保存修改并退出 |
| :q! | 不保存修改退出 |
| :wq! | 保存修改并退出(文件所有者及root) |
| ZZ | 快捷键,保存修改并退出 |
高级操作
| 命令 | 作用 |
|---|
| :r! 文件名 | 将指定文件的所有内容导入到光标所在位置 |
| :r! 命令 | 导入命令执行结果 |
| :map 快捷键 触发命令 | 定义快捷键 |
| :ab 字符串 新字符串 | 只要输入指定字符串,都将替换为新的字符串 |
注:定义的快捷键可能会因为系统重启失效,若想永久保存快捷键,在/home/username/.vimrc和/root/.vimrc中保存命令(不需要加:)