史上最全的vim指令汇总(超全面,超详细)

Vim 是一款功能强大的文本编辑器,深受开发者和系统管理员的喜爱。它具有高效、灵活的特点,能够帮助用户快速完成各种文本编辑任务。本文将对 Vim 的常用指令进行详细汇总,并说明每个命令的作用及用法。

一、基本操作命令

1. :w

作用:保存当前文件。
示例

:w

说明:将当前编辑的文件保存到磁盘。

2. :wq:x

作用:保存并退出 Vim。
示例

:wq

说明:保存当前文件并退出 Vim。

3. :q

作用:退出 Vim。
示例

:q

说明:退出 Vim,如果文件有未保存的修改,会提示确认。

4. :q!

作用:强制退出 Vim,不保存修改。
示例

:q!

说明:强制退出 Vim,不保存当前文件的修改。

二、光标移动命令

1. h

作用:光标向左移动一个字符。
示例

h

说明:将光标向左移动一个字符。

2. j

作用:光标向下移动一行。
示例

j

说明:将光标向下移动一行。

3. k

作用:光标向上移动一行。
示例

k

说明:将光标向上移动一行。

4. l

作用:光标向右移动一个字符。
示例

l

说明:将光标向右移动一个字符。

5. gg

作用:跳转到文件的第一行。
示例

gg

说明:将光标跳转到文件的第一行。

6. G

作用:跳转到文件的最后一行。
示例

G

说明:将光标跳转到文件的最后一行。

7. 数字 + G

作用:跳转到指定行号的行。
示例

10G

说明:将光标跳转到第 10 行。

三、编辑命令

1. i

作用:进入插入模式,在当前光标位置插入文本。
示例

i

说明:进入插入模式,开始在当前光标位置插入文本。

2. a

作用:进入插入模式,在当前光标后插入文本。
示例

a

说明:进入插入模式,开始在当前光标后插入文本。

3. o

作用:进入插入模式,在光标所在行的下一行插入文本。
示例

o

说明:进入插入模式,开始在光标所在行的下一行插入文本。

4. O

作用:进入插入模式,在光标所在行的上一行插入文本。
示例

O

说明:进入插入模式,开始在光标所在行的上一行插入文本。

5. x

作用:删除光标所在位置的字符。
示例

x

说明:删除光标所在位置的字符。

6. dd

作用:删除光标所在的一整行。
示例

dd

说明:删除光标所在的一整行。

7. D

作用:删除从光标位置到行尾的文本。
示例

D

说明:删除从光标位置到行尾的文本。

8. yy

作用:复制光标所在的一行文本。
示例

yy

说明:复制光标所在的一行文本。

9. p

作用:粘贴复制的文本到光标所在位置的下一行。
示例

p

说明:粘贴复制的文本到光标所在位置的下一行。

10. u

作用:撤销上一次的编辑操作。
示例

u

说明:撤销上一次的编辑操作。

11. Ctrl + r

作用:重做上一次撤销的编辑操作。
示例

Ctrl + r

说明:重做上一次撤销的编辑操作。

四、查找和替换命令

1. /查找文本

作用:查找文件中的文本内容。
示例

/search_string

说明:查找文件中的 search_string,按回车键后光标会移动到找到的第一个匹配位置。

2. n

作用:查找下一个匹配项。
示例

n

说明:查找下一个匹配项。

3. N

作用:查找上一个匹配项。
示例

N

说明:查找上一个匹配项。

4. :s/旧文本/新文本/

作用:替换当前行中第一个匹配的旧文本为新文本。
示例

:s/old/new/

说明:将当前行中第一个匹配的 old 替换为 new

5. :%s/旧文本/新文本/g

作用:替换整个文件中所有匹配的旧文本为新文本。
示例

:%s/old/new/g

说明:将整个文件中所有匹配的 old 替换为 new

五、可视模式命令

1. v

作用:进入普通可视模式,可以选择任意文本。
示例

v

说明:进入普通可视模式,开始选择文本。

2. V

作用:进入行可视模式,可以选择整行。
示例

V

说明:进入行可视模式,开始选择整行文本。

3. Ctrl + v

作用:进入块可视模式,可以选择列块。
示例

Ctrl + v

说明:进入块可视模式,开始选择列块文本。

4. y

作用:复制选中的文本。
示例

y

说明:复制选中的文本。

5. d

作用:删除选中的文本。
示例

d

说明:删除选中的文本。

6. c

作用:修改选中的文本,进入插入模式。
示例

c

说明:修改选中的文本,进入插入模式。

六、其他常用命令

1. :help

作用:打开 Vim 的帮助文档。
示例

:help

说明:打开 Vim 的帮助文档,查看详细的命令和用法。

2. :version

作用:查看 Vim 的版本信息。
示例

:version

说明:查看 Vim 的版本信息。

3. :set nu

作用:显示行号。
示例

:set nu

说明:在编辑器中显示行号。

4. :set nonu

作用:隐藏行号。
示例

:set nonu

说明:在编辑器中隐藏行号。

5. :w !

作用:强制保存文件。
示例

:w !

说明:强制保存文件,即使文件是只读的。

6. :r file

作用:读取文件内容并插入到当前文件中。
示例

:r file.txt

说明:读取 file.txt 的内容并插入到当前文件中。

7. :sp file

作用:在当前窗口中打开文件。
示例

:sp file.txt

说明:在当前窗口中打开 file.txt

8. :vsp file

作用:在垂直分割的窗口中打开文件。
示例

:vsp file.txt

说明:在垂直分割的窗口中打开 file.txt

9. :tabnew file

作用:在新标签页中打开文件。
示例

:tabnew file.txt

说明:在新标签页中打开 file.txt

10. :tabclose

作用:关闭当前标签页。
示例

:tabclose

说明:关闭当前标签页。

11. :tabnext

作用:切换到下一个标签页。
示例

:tabnext

说明:切换到下一个标签页。

12. :tabprevious

作用:切换到上一个标签页。
示例

:tabprevious

说明:切换到上一个标签页。

13. :tabmove +n

作用:将当前标签页移动到第 n 个位置。
示例

:tabmove +1

说明:将当前标签页移动到第 1 个位置。

14. :tabmove -n

作用:将当前标签页移动到倒数第 n 个位置。
示例

:tabmove -1

说明:将当前标签页移动到倒数第 1 个位置。

15. :tabonly

作用:关闭除当前标签页外的所有标签页。
示例

:tabonly

说明:关闭除当前标签页外的所有标签页。

16. :tabfirst

作用:切换到第一个标签页。
示例

:tabfirst

说明:切换到第一个标签页。

17. :tablast

作用:切换到最后一个标签页。
示例

:tablast

说明:切换到最后一个标签页。

18. :tabnext n

作用:切换到第 n 个标签页。
示例

:tabnext 2

说明:切换到第 2 个标签页。

19. :tabprevious n

作用:切换到倒数第 n 个标签页。
示例

:tabprevious 2

说明:切换到倒数第 2 个标签页。

20. :tabmove +n

作用:将当前标签页移动到第 n 个位置。
示例

:tabmove +2

说明:将当前标签页移动到第 2 个位置。

21. :tabmove -n

作用:将当前标签页移动到倒数第 n 个位置。
示例

:tabmove -2

说明:将当前标签页移动到倒数第 2 个位置。

22. :tabonly

作用:关闭除当前标签页外的所有标签页。
示例

:tabonly

说明:关闭除当前标签页外的所有标签页。

23. :tabfirst

作用:切换到第一个标签页。
示例

:tabfirst

说明:切换到第一个标签页。

24. :tablast

作用:切换到最后一个标签页。
示例

:tablast

说明:切换到最后一个标签页。

25. :tabnext n

作用:切换到第 n 个标签页。
示例

:tabnext 2

说明:切换到第 2 个标签页。

26. :tabprevious n

作用:切换到倒数第 n 个标签页。
示例

:tabprevious 2

说明:切换到倒数第 2 个标签页。

27. :tabmove +n

作用:将当前标签页移动到第 n 个位置。
示例

:tabmove +2

说明:将当前标签页移动到第 2 个位置。

28. :tabmove -n

作用:将当前标签页移动到倒数第 n 个位置。
示例

:tabmove -2

说明:将当前标签页移动到倒数第 2 个位置。

29. :tabonly

作用:关闭除当前标签页外的所有标签页。
示例

:tabonly

说明:关闭除当前标签页外的所有标签页。

30. :tabfirst

作用:切换到第一个标签页。
示例

:tabfirst

说明:切换到第一个标签页。

31. :tablast

作用:切换到最后一个标签页。
示例

:tablast

说明:切换到最后一个标签页。

32. :tabnext n

作用:切换到第 n 个标签页。
示例

:tabnext 2

说明:切换到第 2 个标签页。

33. :tabprevious n

作用:切换到倒数第 n 个标签页。
示例

:tabprevious 2

说明:切换到倒数第 2 个标签页。

34. :tabmove +n

作用:将当前标签页移动到第 n 个位置。
示例

:tabmove +2

说明:将当前标签页移动到第 2 个位置。

35. :tabmove -n

作用:将当前标签页移动到倒数第 n 个位置。
示例

:tabmove -2

说明:将当前标签页移动到倒数第 2 个位置。

36. :tabonly

作用:关闭除当前标签页外的所有标签页。
示例

:tabonly

说明:关闭除当前标签页外的所有标签页。

37. :tabfirst

作用:切换到第一个标签页。
示例

:tabfirst

说明:切换到第一个标签页。

38. :tablast

作用:切换到最后一个标签页。
示例

:tablast

说明:切换到最后一个标签页。

39. :tabnext n

作用:切换到第 n 个标签页。
示例

:tabnext 2

说明:切换到第 2 个标签页。

40. :tabprevious n

作用:切换到倒数第 n 个标签页。
示例

:tabprevious 2

说明:切换到倒数第 2 个标签页。

41. :tabmove +n

作用:将当前标签页移动到第 n 个位置。
示例

:tabmove +2

说明:将当前标签页移动到第 2 个位置。

42. :tabmove -n

作用:将当前标签页移动到倒数第 n 个位置。
示例

:tabmove -2

说明:将当前标签页移动到倒数第 2 个位置。

43. :tabonly

作用:关闭除当前标签页外的所有标签页。
示例

:tabonly

说明:关闭除当前标签页外的所有标签页。

44. :tabfirst

作用:切换到第一个标签页。
示例

:tabfirst

说明:切换到第一个标签页。

45. :tablast

作用:切换到最后一个标签页。
示例

:tablast

说明:切换到最后一个标签页。

46. :tabnext n

作用:切换到第 n 个标签页。
示例

:tabnext 2

说明:切换到第 2 个标签页。

47. :tabprevious n

作用:切换到倒数第 n 个标签页。
示例

:tabprevious 2

说明:切换到倒数第 2 个标签页。

48. :tabmove +n

作用:将当前标签页移动到第 n 个位置。
示例

:tabmove +2

说明:将当前标签页移动到第 2 个位置。

49. :tabmove -n

作用:将当前标签页移动到倒数第 n 个位置。
示例

:tabmove -2

说明:将当前标签页移动到倒数第 2 个位置。

50. :tabonly

作用:关闭除当前标签页外的所有标签页。
示例

:tabonly

说明:关闭除当前标签页外的所有标签页。

51. :tabfirst

作用:切换到第一个标签页。
示例

:tabfirst

说明:切换到第一个标签页。

52. :tablast

作用:切换到最后一个标签页。
示例

:tablast

说明:切换到最后一个标签页。

53. :tabnext n

作用:切换到第 n 个标签页。
示例

:tabnext 2

说明:切换到第 2 个标签页。

54. :tabprevious n

作用:切换到倒数第 n 个标签页。
示例

:tabprevious 2

说明:切换到倒数第 2 个标签页。

55. :tabmove +n

作用:将当前标签页移动到第 n 个位置。
示例

:tabmove +2

说明:将当前标签页移动到第 2 个位置。

56. :tabmove -n

作用:将当前标签页移动到倒数第 n 个位置。
示例

:tabmove -2

说明:将当前标签页移动到倒数第 2 个位置。

57. :tabonly

作用:关闭除当前标签页外的所有标签页。
示例

:tabonly

说明:关闭除当前标签页外的所有标签页。

通过以上命令,我们可以高效地完成各种文本编辑任务,提高工作效率。希望这些命令对你有所帮助,欢迎大家在评论区互相交流!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值