vi 的使用方法


Vi编辑器的指令基本在命令模式中输入。
命令模式下有如下指令供使用:(任何时候按Escape键可回到命令模式)

h 将光标左移一格
l 将光标右移一格
j 将光标下移一格
k 将光标上移一格
w 将光标移到下一个小字的前面
W 将光标移到下一个大字的前面
b 将光标移到前一个小字的前面
B 将光标移到前一个大字的前面
e 将光标移到下一个小字的后面
E 将光标移到下一个大字的后面
fc 将光标移到同一行的下一个字符c处
Fc 将光标移到同一行的前一个字符c处
tc 将光标移到同一行的下一个字符c的前一格
Tc 将光标移到同一行的前一个字符c的后一格
number| 将光标移到第number列上
+或者Enter 将光标移到下一行第一个非空白字符处。
- 将光标移到上一行第一个非空白字符处。
0 将光标移到当前行的第一个字符处
$ 将光标移到当前行的最后一个字符处
H 将光标移到屏幕最顶端一行
L 将光标移到屏幕最底端一行
M 将光标移到屏幕的中间
z- 把当前行作为屏幕的最后一行,刷新屏幕
z. 把当前行作为屏幕的中间一行,刷新屏幕
Ctrl+l 重新显示屏幕当前内容
Ctrl+f 向后滚一页
Ctrl+d 向后滚半页
Ctrl+b 向前滚一页
Ctrl+u 向前滚半页
Ctrl+e 屏幕向下滚一行
Ctrl+y 屏幕向上滚一行
/pattern 向后寻找指定字符串pattern
?pattern 向前寻找指定字符串pattern
n 在上次指定的方向上,再次查找
N 在上次指定的方向的反方向上,再次查找
% 移到匹配的“()”或者“{}”上
a 光标移到所在处之后,进入文本输入状态
A 光标移到行尾,进入文本输入状态
i 在光标所在处,进入文本输入状态
I 光标移到行首第一个非空白的字符处,进入文本输入状态
o 在光标所在行后插入一空行,进入文本输入状态
O 在光标所在行前插入一空行,进入文本输入状态
cc或者S 将当前一行清空,进入文本输入状态,覆盖方式
C 改变本行光标以后的文字,进入文本输入状态,覆盖方式
cw 改变光标所在位置的单词,进入文本输入状态,覆盖方式
dd 删除当前行,后续行自动上移
D 删除光标所在行光标以后的文字
Dw 删除光标所在单词
J 把下一行内容加到本行行尾
rc 把光标处字符替换成c
R 覆盖本行内容,本行编辑模式变为改写模式
u 恢复上一次的修改
x 删除光标所在处字符
X 删除光标左侧字符
~ 改变光标所在处字符的大小写
. 重复上一次操作
<< 当前行左移一个Tab
>> 当前行右移一个Tab
yy或者Y 把当前行放入缓冲区
yw 将光标所在单词放入缓冲区
p 将缓冲区内容放入光标所在行的下面
P 将缓冲区内容放入光标所在行的上面
:w 回写修改后的文件
:w filename 当filename不存在,写成filename,否则报错
:w! filename filename存在也直接写成filename
:n 开始编辑vi激活的文件列表中的下一个文件
:n filename 开始编辑指定的文件filename
:e filename 使用filename激活vi,在vi中装入另外一个文件filename
:e! 重新装入当前文件,丢弃一切未保存的改动
:r filename 读取filename的内容,加在光标处
:r! command 执行command文件,将其输出加在光标处
Ctrl+g 取得正在编辑的文件的有关信息
:sh 起动sh,从sh中返回可以用exit或者Ctrl-d
:! command 执行command指令
:!! 重新执行上次的! command指令
:q 退出vi,如果用户未将修改保存,不能退出
:q! 退出vi,不管是否有未保存的修改
:wq或者:x 退出vi并保存修改

你可能感兴趣的:(实用-转贴)