再转一篇vi的常用操作指令
一. 光标移动指令
01. h:向左移动一个字符
02. l:向右移动一个字符
03. j:向下移动一行
04. k:向上移动一行
05. 0:移动到当前行最前面
06. $:移动到当前行最后面
07. ^:移动到当前行第一个非空白字符
08. b:向左移动到单词的第一个字符
09. w:向右移动到单词的第一个字符
10. e:向右移动到单词的最后一个字符
11. H:移动到当前页第一行
12. M:移动到当前页中间行
13. L:移动到当前页最后行
14. Ctrl + f:向下翻页
15. Ctrl + b:向上翻页
16. Ctrl + d:向下翻半页
17. Ctrl + u:向上翻半页
18. n-:向上移动n行
19. n+:向下移动n行
20. nG:移动到第n行(n为0或者直接键入G表示移动到最后一行,键入gg可移动到第一行)
21. fx:向右移动到x字符上
22. Fx:向左移动到x字符上
23. tx:向右移动到x字符前
24. Tx:向左移动到x字符前
25. ;:重复上一次f/F或t/T操作
26. ,:反向重复上一次f/F或t/T操作
27. /string:向右移动到string上
28. ?string:向左移动到string上
29. n:重复上一次/或?操作
30. N:反向重复上一次/或?操作
31. n(:向左移动n个句子(句子以.?!划分)
32. n):向右移动n个句子
33. n{:向左移动n个段落(段落以空白行划分)
34. n}:向右移动n个段落
二. 编辑指令
01. a:从光标所在位置后面开始追加内容
02. A:从光标所在行后面开始追加内容
03. i:从光标所在位置前面开始插入内容
04. I:从光标所在行前面开始插入内容
05. o:从光标所在行下面开始新增一行
06. O:从光标所在行上面开始新增一行
07. x:删除光标所在位置字符
08. r:替换光标所在位置的字符,键入r后紧跟要替换的字符
09. R:替换光标所在的行,直到键入Esc为止
10. s:删除光标所在位置的字符,并进入输入模式
11. S:删除光标所在的行,并进入输入模式
12. u:恢复上一次修改
13. U:恢复对光标所在行的所有修改
14. d(删除)、y(复制)、c(修改):这三个指令分别与前面介绍过的e、w、b、$、0、)、(、}、{组合代表在某一范围内的具体操作
15. p:粘贴
16. D:删除光标所在位置到该行结束
17. dd:删除光标所在行
18. cc:删除光标所在行,并进入输入模式
19. yy:复制光标所在行
20. v:选定操作范围
三. 退出指令
01. :q:在没有任何修改的情况下退出
02. :q!:放弃已经作出的修改并退出
03. :w:保存修改
04. :wq:保存修改并退出
05. :x:保存修改并退出