:set nu //显示行号 :set nonu //取消显示行号 n+ //向下跳n行 n- //向上跳n行 nG //跳到行号为n的行 G //跳至文件的底部 g //跳转到文件头部
(插入模式)编辑模式
以下按键进入编辑插入模式
1 2 3 4 5 6 7 8
a //在当前光标位置的右边添加文本 i //在当前光标位置的左边添加文本 A //在当前行的末尾位置添加文本 I //在当前行的开始处添加文本(非空字符的行首) O //在当前行的上面新建一行 o //在当前行的下面新建一行 R //替换(覆盖)当前光标位置及后面的若干文本 J //合并光标所在行及下一行为一行(依然在命令模式)
ESC可以退出编辑模式
(命令模式)删除和复制
在vim中, 除了在编辑模式下修改文件,命令模式的时候可以删除和复制
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
x //删除当前字符 nx //删除从光标开始的n个字符 dd //删除当前行 ndd //向下删除当前行在内的n行 u //撤销上一步操作 U //撤销对当前行的所有操作 yy //将当前行复制到缓存区,也可以用 "ayy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。 nyy //将当前行向下n行复制到缓冲区,也可以用 "anyy 复制,"a 为缓冲区,a也可以替换为a到z的任意字母,可以完成多个复制任务。 yw //复制从光标开始到词尾的字符。 nyw //复制从光标开始的n个单词。 y^ //复制从光标到行首的内容。 VPS侦探 y$ //复制从光标到行尾的内容。 p //粘贴剪切板里的内容在光标后,如果使用了前面的自定义缓冲区,建议使用"ap 进行粘贴。 P //粘贴剪切板里的内容在光标前,如果使用了前面的自定义缓冲区,建议使用"aP 进行粘贴。
(命令模式)搜索和替换
命令模式下(esc退出插入模式)
1 2 3 4 5 6 7 8 9 10 11 12 13 14
/keyword //向光标下搜索keyword字符串,keyword可以是正则表达式 ?keyword //向光标上搜索keyword字符串 n //向下搜索前一个搜素动作 N //向上搜索前一个搜索动作
*(#) //当光标停留在某个单词上时, 输入这条命令表示查找与该单词匹配的下(上)一个单词. 同样, 再输入 n 查找下一个匹配处, 输入 N 反方向查找.