· Command 模式:
以 vi 处理一个档案的时后,一进入该档案就是一般模式了。在这个模式中,你可以使用『上下左右』按键来移动光标,
您可以使用『删除字符』或『删除整行』来处理档案内容,也可以使用『复制、贴上』来处理您的文件资料。
· 编辑模式:
按下『i, I, o, O, a, A, r, R』等字母之后才会进入编辑模式。
而如果要回到一般模式时,则必须要按下『Esc』这个按键即可退出编辑模式。
· 指令列命令模式:
在一般模式当中,输入『 : 或 / 』就可以将光标移动到最底下那一行,在这个模式当中,可以提供您『搜寻资料』的动作,而读取、存盘、大量取代字符、离开 vi 、显示行号 等等的动作则是在此模式中达成的!
3.3 文件的保存和退出;
Command 模式是vi或vim的默认模式,如果我们处于其它命令模式时,要通过ESC键切换过来。
:w 保存;
:w filename 另存为filename;
:wq! 保存退出;
:wq! filename 注:以filename为文件名保存后退出;
:q! 不保存退出;
:x 应该是保存并退出 ,功能和:wq!相同
3.4 光标移动;
当我们按ESC进入Command模式后,我们可以用下面的一些键位来移动光标;
j 向下移动一行;
k 向上移动一行;
h 向左移动一个字符;
l 向右移动一个字符;
ctrl+b 向上移动一屏;
ctrl+f 向下移动一屏;
向上箭头 向上移动;
向下箭头 向下移动;
向左箭头 向左移动;
向右箭头 向右移动;
我们编辑一个文件时,对于 j、k、l和h键,还能在这些动作命令的前面加上数字,比如 3j,表示向下移动3行。
3.5 插入模式(文本的插入);
i 在光标之前插入;
a 在光标之后插入;
I 在光标所在行的行首插入;
A 在光标所在行的行末插入;
r 取代光标所在的那一个字符;
R 取代光标所在的那一个文字
o 在光标所在的行的上面插入一行;
O 在光标所在的行的下面插入一行;
s 删除光标后的一个字符,然后进入插入模式;
S 删除光标所在的行,然后进入插入模式;
3.6 文本内容的删除操作(实际为剪切);
x 删除一个字符;
#x 删除几个字符,#表示数字,比如3x;
dw 删除一个单词;
#dw 删除几个单词,#用数字表示,比如3dw表示删除三个单词;
dd 删除一行;
#dd 删除多个行,#代表数字,比如3dd 表示删除光标行及光标的下两行;
d$ 删除光标到行尾的内容;
J 删除光标所处的行与上一行之间的空格,把光标行和上一行接在一起;
3.7 文本内容的复制操作
yy 复制光标所在的那一行(常用)
#yy 复制光标所在的向下 n 列,例如 20yy 则是复制 20 列(常用)
3.8 文本内容的粘帖的操作;
p 在光标之后粘帖;
shift+p 在光标之前粘帖
当我们删除文字时,可以把光标移动到某处,然后按shift+p键就把内容贴在原处,然后再移动光标到某处,然后再按p或shift+p又能贴上;
3.9 恢复修改及恢复删除操作;
u 撤消修改或删除操作;
按ESC键返回Command(命令)模式,然后按u键来撤消删除以前的删除或修改;
如果您想撤消多个以前的修改或删除操作,请按多按几次u。
3.10 为所有内容添加行号;
按ESC键进入Command 模式;
:set nu 显示行号,设定之后,会在每一行的前缀显示该行的行号
:set nonu 与 set nu 相反,为取消行号!
3.11 查找和替换功能;
3.11.1 查找;
首先,我们要进入ESC键,进入命令模式;我们输入/或?就进入查找模式了;
/SEARCH 注:正向查找,按n键把光标移动到下一个符合条件的地方;
?SEARCH 注:反向查找,按shift+n 键,把光标移动到下一个符合条件的
3.11.2 替换;
按ESC键进入命令模式;
:s /SEARCH/REPLACE/g 注:把当前光标所处的行中的SEARCH单词,替换成REPLACE,并把所有SEARCH高亮显示;
:%s /SEARCH/REPLACE 注:把文档中所有SEARCH替换成REPLACE;
:#,# s /SEARCH/REPLACE/gc 注:#号表示数字,表示从多少行到多少行(1,$表示第一行到最后一行),把SEARCH替换成REPLACE;
注:在这之中,g表示全局查找;c表示替换前确认;我们注意到,就是没有替换的地方,也会把SEARCH高亮显示;