您的位置:首页 > 其它

vi编辑器常用命令备忘录

2008-03-27 16:38 316 查看
切换到输入模式:
a :从光标所在位置后面开始输入文本。
A :从光标所在行的行尾开始输入文本。
i :从光标所在位置前面开始插入文本。
I :从光标所在行的第一个非空格字符前面开始插入文本。
o :在光标所在行下方新增一列并进入输入模式。
O :在光标所在行上方新增一列并进入输入模式。
h :左移一列。
j :下移一行。
k :上移一行。
l :右移一列。
/str :向前查找str
n :沿当前方向查找下一个。
N :沿当前查找方向反向查找下一个。
w :光标移到下一个单词开头。
b :光标移到前一个单词开头。
e :光标移到下一个单词末尾。
$ :光标移到当前行行尾。
^或0 :光标移到当前行行首。
fm :光标移到文本的下一个字符m。
nG :光标移到第n行。
G :光标移到最后一行。
- :光标移到当前行上一行。
+ :光标移到当前行下一行。
:n :光标移到第n行。
:$ :光标移到最后一行。
L :光标移到屏幕最下面一行。
M :光标移到屏幕中间一行。
H :光标移到屏幕最上面一行。
'' :光标返回到原来位置。(一对单引号)
x :删除光标处的一个字符。
nx :删除光标处的n个字符。
dd :删除当前行。
10dd :删除从当前行开始的10行。
dw :删除光标处的一个单词。
df/ :删除从光标到第一个/字符之间的所有字符。
:5d :删除第5行文本。
:5,10d :删除第5至10行的文本。
:10,$d :删除从第10行开始到行末。
u :撤销最后的一次操作。
U :撤销对当前行进行的所有修改,前提是光标没有移出当前行。
. :重复最后一次文本修改命令。(英文句号)
J :连接两行文本。
r :替换当前光标处的字符。
R :逐字符替换光标后面的文本。
s :将当前光标处一个字符替换成多个字符。
cw :将当前光标处一个单词替换成多个单词。
cc :替换当前行。
cfm :替换从光标到字符m之间的部分。
C :替换从光标到行尾。
:s/str1/str2 :将文本中每行的第一个str1替换成str2。
:s1,10s/str1/str2:将1到10行中的每行第一个str1替换为str2。
:g/var/s/str1/str2:将包含var的行中的第一个str1替换成str2。
:1,$s/bin/BIN/g :将整个文件中的bin替换成BIN(不是每行第一个).
yy :将当前行复制到vi的缓冲区。
P :将复制行粘贴到光标所在行的上一行。
p :将复制行粘贴到光标所在行的下一行。
ddp :上下两行交换。
yw :复制当前单词。
yl :复制当前字符。
yfm :复制当前光标处到第一个m字符之间的文字。
:7 copy 10:将第7行的文本复制到第10行后面。
:7,9 copy $:将第7到第9行的文本复制到文件末尾。
:.,15 copy 3:将当前行到第15行的内容复制到第三行后面。
(.表示当前行,$表示文件尾,0表示文件开头)
:7 move 10:将第7行文本移动到第10行后面。
:w :保存文件。
:x :保存后退出,等于命令:wq。
:w file :将当前文件保存到file文件中。
:10,15 write file:将第10至第15行内容保存到file文件中。
:10,15 write! file:将第10至第15行内容写到已有文件file中并强行覆盖。
:10,15 write >> file:将第10至15行内容追加到file文件尾部。
:1 read file:将文件file的内容读到当前文件的第1,2行之间。
:!cmd :启动一个子shell并执行命令cmd。
:read !cmd:将命令cmd的输出读入当前文件当前行下面。
:0 read !cmd:将cmd命令的输出读到当前文件开头。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: