Vim常用命令

一、打开文件

vim  filename               #打开文件,光标置于首行

vim /pattern filename   #打开文件,光标模式匹配的行

vim –r filename            #恢复上次意外中止的编辑文件

 

二、一般模式的光标定位

Ctrl+f  #屏幕向下移动一页

Ctrl+b  #屏幕向上移动一页

Ctrl+d  #屏幕向下移动一页

Ctrl+u  #屏幕向上移动一页

0或者home键   #移动光标到行首

$或者end键      #移动光标到行尾

H                   #移动光标到屏幕最上方的行

M                   #移动光标到屏幕中间的行

L                   #移动光标到屏幕最下方的行

G                  #移动光标到文档最后一行

nG                #移动光标到文档n行

gg                #移动光标到文档首行

n<Enter>      #下移光标n行

 

三、一般模式下对文本的编辑

x                    删除光标处的字符  
dw                  删至下一个字的开头    
dG                  删除行,直到文件结束    
dd                  删除整行    
db                  删除光标前面的字    
:n,md             从第 m 行开始往前删除 n 行    
d, d$              从光标处删除到行尾

u                   撤消最后一次修改  
U                   撤消当前行的所有修改

yy                  将当前行的内容放入临时缓冲区  
nyy                将 n 行的内容放入临时缓冲区    
p                   将临时缓冲区中的文本放入光标后    
P                   将临时缓冲区中的文本放入光标前    
ndd               删除 n 行放入名字为圆括号内的可命名缓冲区,省略 n 表示当前行    
c                   删除当前行并进入编辑模式

 

四、编辑模式下的文本替换和查找

:s/aa/bb/g         将光标所在行出现的所有包含 aa 的字符串中的 aa 替换为 bb  
:s/\/bb/g           将光标所在行出现的所有 aa 替换为 bb, 仅替换 aa 这个单词    
:%s/aa/bb/g      将文档中出现的所有包含 aa 的字符串中的 aa 替换为 bb    
:12,23s/aa/bb/g 将从12行到23行中出现的所有包含 aa 的字符串中的 aa 替换为 bb    
:12,23s/^/#/     将从12行到23行的行首加入 # 字符    
:%s= *$==        将所有行尾多余的空格删除    
:g/^\s*$/d        将所有不包含字符(空格也不包含)的空行删除.

/xxx(?xxx)        表示在整篇文档中搜索匹配xxx的字符串, / 表示向下查找, ? 表示向上查找.其中xxx可以是正规表达式,关于正规式就不多说了.一般来说是区分大小写的, 要想不区分大小写, 那得先输入:set ignorecase  


五、编辑多个文档

vim filename1 filenam2    同时编辑两个文件

:n                                 进入编辑filename1

:N                                 进入编辑filename2

 

六、多窗口编辑

vim filename1                编辑filename1

:sp filename2                分窗口编辑filename2

Ctrl+w+j                      在两个窗口间切换

Ctrl+w+k                     在两个窗口间切换

:diffthis                       对比两个文件

:vsp                            分窗口切换为水平模式

 

七、存档和退出

:w                              将编辑的文档写入磁盘

:w!                             强制写入文件

:wq                            将文档写入磁盘并退出VIM

:q                              退出VIM

:q!                             强制退出VIM

ZZ                             修改了文档则保存退出,反之则不保存退出

:w filename                  将文档写入filename

:r filename                    读入filename

:n1,n2 w filename          将n1到n2行写入filename

:! command                 执行command命令


本文出自 “缘随心愿” 博客,请务必保留此出处http://281816327.blog.51cto.com/907015/1616287

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。