一、vi的工作模式
vi有两种工作模式:
编辑模式:用来输入和编辑文件的模式,屏幕上会显示用户的键入,按键不是被解释为命令执行,而是作为文本写到用户的文件中。
指令模式:用来编辑、存盘和退出文件的模式。
运行vi后,首先进入指令模式。此时输入的任何字符都被视为指令,键入的命令不会在屏幕上显示。
从指令模式切换到编辑模式,则可以按“Insert”键或“i”键,从编辑模式切换到指令模式,可按“Esc”键。
状态行是屏幕底部一行,被vi编辑器用来反馈编辑操作结果。错误消息或提供信息的消息会在状态行中显示出来。
二、vi的启动和退出
1.启动vi
在系统图示字符下键入“vi”+“空格”+“文件名”,如:vi test.txt
vi可以自动载入所要编辑的文件或是开启一个新文件。
2.退出vi
在指令模式下键入如下命令可以退出vi:
:q 如果用户只是读文件的内容而未对文件进行修改,可以在命令模式下输入“:q”退出vi。
:q! 如果用户对文件的内容作了修改,又决定放弃对文件的修改,则用“:q!”命令。
:w! 强行保存一个vi文件,如果该文件已存在,则进行覆盖。
:wq 保存文件并退出vi。
ZZ 快速保存文件的内容,然后退出vi。功能和“:wq”相同。
:w filename 相当于“另存为”。
:n,mw filename 将第n-m行的文本保存到指定的文件filename中。
三、vi长指令和短指令
长指令:以冒号开头,键入冒号后,在屏幕的最末尾一行会出现冒号提示符,等待用户键入指令,输入完指令后回车,vi会执行该指令。
短指令:与快捷键相似,键入短指令后,vi不会给任何提示就直接执行。
1.输入输出命令
a 在光标后输入文本
A 在当前行末尾输入文本
i 在光标前输入文本
I 在当前行开始输入文本
o 在当前行后输入新一行
O 在当前行前输入新一行
2.光标移动命令
b 移动到当前单词的开始
e 移动到当前单词的结尾
w 向后移动一个单词
h 向前移动一个字符
l 向后移动一个字符
j 向下移动一行
k 向上移动一行
3.删除操作命令
x 删除光标所在的字符
dw 删除光标所在的单词
dd 删除当前行
d$ 删除光标至行尾的所有字符
D 与“d$”命令相同
4.替换操作命令
r 替换光标所在的字符
R 替换字符序列
cw 替换一个单词
ce 与“cw”命令相同
cb 替换光标所在的前一字符
c$ 替换自光标位置至行尾的所有字符
C 与“c$”命令相同
cc 替换当前行
5.查询操作命令
/abc 向后查询字符串“abc”
?abc 想前查询字符串“abc”
n 重复前一次查询
N 重复前一次查询,但方向相反
6.拷贝粘贴命令
yw 将光标所在单词拷入剪贴板
y$ 将光标至行尾的字符拷入剪贴板
Y 与“y$”命令相同
yy 将当前行拷入剪贴板
y 将选取的内容拷入剪贴板
p 将剪贴板中的内容粘贴在光标后
P 将剪贴板中的内容粘贴在光标前
7.其他操作命令
v 选取文本内容
u 取消上一次的操作
U 可以恢复对光标所在行的所有改变
J 把两行文本链接到一起
:set 用来设置或浏览vi系统当前的选项(加参数“all”后查看所有选项的列表)
:X 对所编辑的文件进行简单加密