常用vi编辑器命令行

来源:互联网 发布:js element 编辑:程序博客网 时间:2024/04/27 23:12

对于VI的命令行,不需要特意的去记忆,写下来,让要用到的时候能找到就行

 

 游标控制

h游标向左移j游标向下移k游标向上移l (or spacebar)游标向右移w向前移动一个单词b向后移动一个单词e向前移动一个单词,且游标指向单词的末尾(移到当前句子的首部)移到下一个句子的首部{移到当前段的首部}移到下一段的首部[[移到当前区段的首部]]移到下一个区段的首部0移到当前行的首部$移到当前行的尾部^移到当前行第一个非空白字符的地方+ or RETURN移动到下一行的第一个字符-移动到上一行的第一个字符n |移动到当前行的字符n的地方H移动到当前屏幕的首部M移动到当前屏幕的中部L移动到当前屏幕的尾部nH移动到当前屏幕首部下的n行nL移动到当前屏幕尾部上的n行Ctrl-F移动到下一屏Ctrl-B移动到上一屏Ctrl-D向下移动半屏Ctrl-U向上移动半屏    z RETURN刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的首部(是不是不明白???不明白的话,试试就知道是什么意思了)z .刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的中部z -刷新屏幕,调整屏幕,使当前的游标在刷新后的屏幕的尾部Ctrl-L刷新屏幕,不调整屏幕位置Ctrl-R刷新屏幕,不调整屏幕位置/text向下搜索text/重复上次的搜索的内容向下搜索一次?text向上搜索text?重复上此搜索的内容向上搜索一次n重复上此的搜索,向下搜索N重复上此的搜索,向上搜索/text/+n移动到text所在行的下面n行?text?-n移动到text所在行的上面n行    nG移动到n行:n移动到n行G移动在最后一行

 

内容编辑

A:当前行的尾部追加内容

i:游标前插入内容

I:游标后插入内容

o:在鼠标所在行的下面添加内容

O:在鼠标所在行的上面添加内容

ESC:退出编辑模式

Ctrl-T:移动到下一个tab

Backspace:向后移动一个字符

Ctrl-U:删除当前

cw:删除游标所在的字符,然后进入编辑模式

cc:删除游标所在的行,然后进入编辑模式

C:删除从游标所在的位置到行尾的字符,然后进入编辑模式

dd:删除当前行

ndd:删除第n行

D:删除当前行游标所在的位置后面的字符

dw:删除邮编所在的字符

d}:删除当前段剩余的字符

d^:删除游标前到行首的字符

c/pat:删除游标后面到第一次匹配字符间的内容

dn:删除游标后面到下一个匹配字符间的内容

dfa:删除当前行游标到匹配字符间的内容(匹配的字符也将被删)

dta:删除当前行游标到匹配字符间的内容(匹配的字符不被删)

dL:删除从游标到屏幕的最后一行之间的内容

dG:删除从游标到文件末尾之间的内容
J:连结上下两行的内容

p:在游标后面插入buffer中的内容

P:在游标前面插入buffer中的内容

rx:用x替换字符

Rtext:用text从游标开始处进行替换

u:撤销最后的改变

U:还原当前行的内容

x:向后删除游标所在位置的字符

X:向前删除游标前面的字符

nX:删除前面的n个字符,游标所在的字符将不会被删

.:还原最后的改变

~:反转字母的大小写

y:拷贝当前行到新的buffer

yy:拷贝当前行

"xyy:拷贝当前行的buffer名为x的buffer

ye:拷贝当单词的末尾

 

文件操作

:w写文件

 





 


 


 

 

:w!写文件,忽略警告信息:w! file覆盖文件,忽略警告信息:wq写文件之后退出编辑:q退出编辑器:q!强制退出编辑器:w file把文件的内容写到另一个文件ZZ退出编辑器,如果文件有改动,则保存再退出:x退出编辑器,如果文件有改动,则保存再退出:n1,n2w file把n1行到n2行间的内容写到文件file:n1,n2w >> file把n1行到n2行间的内容追加到文件file:e file2在当前文件的命令行模式下编辑file2:e!重新从磁盘加载文件:e#交替编辑文件    :n编辑地下一行:n!编辑地下一行(忽略警告)  :r file在游标后面插入文件:r !command在当前行的后面,插入运行命令后的输出内容