首页 > 代码库 > vim的简单操作

vim的简单操作

按esc进入命令模式

1.替换

:%s/str1/str2/g         替换每一行中所有str1为str2

:s/str1/str2/g      替换当前行中所有str1为str2

:n1,n2s/str1/str2/g    替换n1行到n2行中所有str1为str2

备注:去掉/g即表示只替换匹配到的第一个str1为str2

 

2.大小写转换

:%s/[a-z]/\U&/g     U转换成大写

:%s/[A-Z]/\L&/g    L转换成小写

:%s/\w*/\u&/g    每个单词的首字母转成大写

:%s/\w*/\U&/g    所有单词都全部转成大写

gggUG        全文大写

备注:l(小写L):单词首字母转成小写,L:单词全部转成大写,\w:匹配单词

 

3.添加

:%s/^/str      在每行行首添加str内容

:%s/$/str      在每行行尾添加str内容

:n1,n2s/^/str     在n1行到n2行首添加strneir

备注:^表示行首,$表示行尾

 

4. vi常用命令
?h,j,k,l :左、下、上、右移动(单字符移动)
?CTRL-B,CTRL-F :向上、下翻页
?w,b,e,ge :下个单词词首、上个单词词首、下个单词词尾、上个单词词尾
?W,B,E,gE :与上面功能类似,但不是以单词为分界,而是以空白为分界
?H,M,L :当前窗口的顶、中、尾部
?zt,zz,zb :按光标所在位置滚屏,顶部、中间、尾部
?f/F,t/T :f/F-字符,移动到指定字符(F是反向)、t/T-字符,移动到指定字符前(T是反向)
?; , . :;重复上次f/F,t/T命令,而,反方向重复f/F,t/T命令,.命令,重复上次修改动作
? :Normal模式下输入/,然后输入查找内容,可实现查找,按n/N,下/上命中的内容
?* :查找光标所有的单词
?r,R,~ :单字符替换、连续替换、更改大小写
?cw,cb :从光标处修改到单词结尾、从光标处修改到单词开头
?c$/C,c0,cc :从光标修改到本行末尾、从光标修改到本行开头、删除整行从头开始修改
?S,s :删除整行,从头开始修改、删除光标所在字符,然后插入
?yy,y^,y$,yw ,yG:复制当前行、光标到行头、光标到行尾、光标到单词结束、光标到档尾
?dd,d^,d$,dw,dG:剪切命令,类似如上y行为
?p/P :粘贴光标后、前
?$ :移动到光标所在行的行尾
?^:移动到光标所在行的行首
 

 

vim的简单操作