linux中vim编辑器的常用命令以及用法(注意严格区分大小写以及中英文):
vim编辑器有三种模式,分别是:编辑模式,输入模式以及末行模式。
模式转换:
编辑模式》》》输入模式:
i:在光标所在字符前面,转为输入模式(即转完后在光标所在字符前输入); I:在光标所在行的行首,转为输入模式(即转完后在行首输入,不包括行首空 白)
a:在光标所在字符后,转为输入模式(即转完后在光标所在字符后面输入);
A:在光标所在行的行尾转为输入模式(即转完后在行尾输入,行尾包括空格)
o:在光标所在字符下面新建一行,转为输入模式;
O:在光标所在行的行上新建一行,转为输入模式。
输入模式》》》编辑模式:
Esc 键
编辑模式》》》末行模式:
:进入末行模式
末行模式》》》编辑模式:
Esc + Esc键(即连续按两次Esc键)
注意:输入模式和末行模式之间不能直接转换。
打开文件命令:vim 文件具体路径及名称 (默认打开编辑模式)
vim +# 打开文件时光标定格在第#行;
vim + 打开文件时光标定格在最后一行
vim +/PATTERN 打开文件时光标定格在PATTERN(文本及正则表达式组成)第一次匹配到的行 上
关闭文件命令:
编辑模式下退出:ZZ(连续按两次Z键)
末行模式下退出:
:q 退出(没有修改的情况下)
:wq 或x 保存并推出
:q! 强制退出(有修改但不保存)
:w 保存
:w!强制保存
光标移动:
逐字符移动:
h 左 j 下 k 上 l 右
上下左右箭头
#h/j/k/l 移动#位/行字符(#为数字)
逐单词移动:
w:移动到下一个单词词首
e:移动到本单词词尾(光标不在词尾)或下一个单词词尾(光标在词尾)
b:移动到本单词词首(光标不在词首)或上一个单词词首(光标在词首)
#w/e/b :移动#个单词(#为数字)
行内移动:
0:移动到绝对行首(包括空格)
^:移动到行首(不包括空格)
$:移动到行尾
行间移动:
#G:移动到第#行(绝对行数)
G: 移动到最后一行
:# 移动到第#行(末行模式下)
翻屏:
Ctrl+f(forward) :向下翻一屏
Ctrl+d(down) :向下翻半屏
Ctrl+b(backward) :向上翻一屏
Ctrl+u(up) :向上翻半屏
删除字符:
x:删除光标所在位置的字符
#x:删除包括光标所在位置的共#个字符(#为数字)
删除命令:d(delete)
dd:删除光标所在整行 #dd:删除包括光标所在行以内及以下的共#行
与单词跳转命令合用:
#dw,#de,#db
复制与粘贴:
复制:y(yank)用法与删除命令d类似
yy:复制光标所在行整行 #yy:复制包括光标所在行以内及以下共#行
#yw,#ye,#yb
粘贴:p/P
p(paste):若复制的是整行内容,则在要粘贴光标所在位置下面新建一行并粘贴;若不 是整行内容,则在光标所在位置后面粘贴。
P(paste):若复制的是整行内容,则在要粘贴光标位置的上面新建一行并粘贴,若不是 整行,则在光标所在位置前粘贴。
修改:删除指定内容,然后进入输入模式
c(change) 用法与删除d类似
替换模式:
R(replace) 进入替换模式
撤销:
u:撤销上一次操作
#u:撤销前#次操作
Ctrl+r:撤销上一次撤销的操作
重复上一次操作:
. :表示跟上一次操作一样的操作(输入,删除,粘贴等,不包括撤销等操作)
可视化操作(visualization):
v:按字符选取
V:按行选取
关键词查找:
/pattern:利用正则表达式查找(不用加‘’)
?pattern:同上
n/N:向下/向上翻看多个关键字
查找并替换:(末行模式下)
% / 1,$ :表示全局搜索
搜索替换命令使用s///或s@@@等。
例:将全局的空行换成‘space line’: :% s/^$/space line/g
将全局的‘std’字符串换成空格: :1,$ s/std/ /g