DAY02——VIM常用命令

1. 启动vim编译器

   vim filename    打开原有的文件或创建一个新文件

   vim    打开一个新文件,在编辑过程中或结束编译时再指定文件名

   vim -r filename    恢复因意外停机或终端连接中断而未及时保存最终编辑结果的文件

   view filename    以只读方式打开文件。除了不能把编辑处理的最终结果写入文件保存之外,view的所有编译功能均与vim无异。

 

2. 光标定位命令

   yin    

   > ^ v <    将光标左移、上移、下移或右移一个字符(行)位置

   h j k l 同上

   -    光标上移一行

   Enter键(或加号“+”)    光标下移一行

   退格键    将光标左移一个字符位置

   空格键    将光标右移一个字符位置(命令模式)

   Ctrl+F    往下(文件结尾方向)滚动一屏

   Ctrl+B    往上(文件开始方向)滚动一屏

   Ctrl+D    往下滚动半屏

   Ctrl+U    往上滚动半屏

   Ctrl+E    编译窗口中的文件内容整体上移一行

   Ctrl+Y    编译窗口中的文件内容整体下移一行

   w    将光标右移一个字,光标停留在下一个字的字首位置

   W    将光标右移一个字,光标停留在下一个字的字首位置(即使两个字之间存在标点符号)

   b    将光标左移一个字,光标停留在下一个字的字首位置

   B    将光标左移一个字,光标停留在下一个字的字首位置(即使两个字之间存在标点符号)

   e    把光标移至当前所在字(或下一个字)的最后一个字符位置

   E    同上,只是以空格字符作为字的分割符

   ^    把光标移至当前行的其实位置,也即当前行的第一个非空白字符位置

   0    同上

   $    把光标移至当前行的行尾,也即当前行的最后一个字符位置

   H    把光标移至编辑窗口顶部第一行的行首位置

   M    把光标移至编辑窗口中间一行的行首位置

   L    把光标移至编辑窗口底部最后一行的行首位置

 

3. 插入文本数据

   a    在光标当前所在字符位置的后面输入文本数据

   A    在光标当前所在行的行尾(也即最后一个字符位置)后面输入文本数据

   i    在光标当前所在字符位置的前面输入文本数据

   I    在光标当前所在行的行首(也即在一个非空白的起始字符)前面输入文本数据

   o    在光标当前所在行下面的行首位置输入文本数据

   O    在光标当前所在行上面的行首位置输入文本数据

   

4. 修改文本

   C    替换当前文本行光标所在字符位置之后的所有数据,以Esc键结束

   cW    替换光标当前所在字符位置及之后的整个字或部分字,以Esc键结束

   [n]cc    替换当前行,或从当前开始的n行文本,以Esc键结束

   [n]s    替换光标当前所在位置的单个字符,或从光标当前位置开始的n个字符,以Esc键结束

   S    替换当前行,以Esc键结束

   r    替换光标当前所在位置的单个字符

   r<Enter>    断行。也可使用“a”或“i”命令加Esc键实现

   R    从光标当前所在的字符位置开始,替换随后的所有字符,直至按下Esc键

   xp    交换字符位置,交换光标当前所在位置开始字符位置

   ~    转换光标当前所在位置字符的大小写

   u    撤销最近一次执行的编辑命令,或依次撤销先前执行的编辑命令

   :u    同上(ex编辑命令)

   U    撤销施与当前文本行的编辑处理    

 

5. 删除文本

   [n]x    删除光标当前所在位置的字符,或删除从光标当前位置开始的n个字符

   [n]X    删除光标当前所在位置的前一个字符,或删除光标当前所在位置之前的n个字符

   dw    删除光标当前所在位置的一个整字或部分字符。如果光标在字首,则删除整字。如果光标在字的中间任何位置,则删除光标位置及之后的字符

   [n]dd    删除光标所在的文本行,或删除从当前行开始的n个文本行

   D    删除当前文本行从光标位置开始之后的所有字符

   dG    删除从当前行开始直至文件最后一行的所有文本行

   d[n]G    删除从文件的第n行开始直至当前行的所有文本行

   :line#1,line#2 d    删除从指定的行号line#1到line#2之间的所有文本行    

 

6. 复制与移动文本

   [n]yy    复制光标当前所在的文本行,或从当前行开始的n个文本行

   [n]Y    同上

   p(小写)    把复制或删除(“dd”命令)的文本行粘贴到光标所在行的下面

   P(大写)    把复制或删除(“dd”命令)的文本行粘贴到光标所在行的上面

   :line#1,line#2, co line#3    把第line#1~line#2行复制到line#3行之后

   :line#1,line#2 m line#3    把第line#1~line#2行移至第line#3行之后

 

7. 设置行号显示

   :set nu    在编辑期间增加临时行号

   :set nonu    撤销行号显示(默认情况)

   Ctrl+G    显示当前文件的名字和当前文本行的行号

   

8. 设置大小写字符检索准则

   :set ic    检索字符串时忽略字符的大小写

   :set noic    检索字符串时严格区分字符的大小写(默认情况)

 

9. 定位文本行

   G    将光标移至文件的最后一行

   [n]G    将光标移至文件的第n行

 

10. 检索与替换

   :/string    向前(文件结尾方向)检索指定的字符串

   :?string    向后(文件开头方向)检索指定的字符串

   n    将检索方向找出下一个匹配的字符串

   N    逆检索方向找出前一个匹配的字符串

   :[g]/search/s//replace/[g][c]    检索并替换字符串

 

11. 清除屏幕

   Ctrl+L    清除因其他进程的输出信息而干扰的编辑窗口

 

12. 合并文件与合并行

   :r filename    在光标所在行之后插入指定文件的内容

   : line#1 r filename    在第line#1行之后插入指定文件的内容

   J    把相邻的两个文本行合并为一行(把下一行合并到光标当前所在行的后面)

 

13. 保存编辑结果与退出vim编辑器

   :w    保存编辑处理后的结果(把内存缓冲区中的数据写到文件中)

   :w!    强制保存编译处理后的结果

   :wq    保存编辑处理后的结果,然后退出vim编辑器

   :wq!    潜质保存编辑处理后的结果,然后退出vim编辑器

   zz    保存编辑处理后的结果,然后退出vim编辑器

   :q    在未做任何编辑处理时,可以使用此命令退出vim编辑器

   :q!    强制退出vim编辑器,放弃编辑处理后的结果

   :w filename    把编辑处理后的结果写到指定的文件中保存

   :w! filename    把编辑处理偶的结果强制写到指定的文件中保存,即使文件已经存在

   :wq! filename    把编辑处理后的结果强制写到指定的文件中保存,即使文件已经存在,然后退出vim编辑器

 

14. 其他

   :f或Crtl+G    显示文件的名字、编辑状态、文件总的行数、光标当前所在行号和列号,以及当前行之前的行数占整个文件总行数的百分比

   Ctrl+V    输入控制字符

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值