1.vi编辑器的三种模式
1.1 命令模式
在该模式中,可以输入命令来执行许多种功能。控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入编辑模式,或者到 尾行模式。
光标移动
① 字符级
上(k) 下(j) 左(h) 右(l) 键
② 单词级
w: word下个单词首字母
b: before上(本)个单词首字母
e: end下(本)个单词尾字母
③ 行级
$: 定位到行尾
0: 定位到行首
④ 段落级(翻屏)
{: 上(本)个段落首部
}: 下(本)个段落尾部
⑤ 屏幕级(不翻屏)
H: 当前屏幕首部
L: 当前屏幕尾部
⑥ 文档级
G: 文档尾部
1G: 文档首部
nG: 文档的第n行删除内容
dd : 删除光标当前行
n+dd : 向后删除n行内容(包括当前行)
x : 删除光标所在的字符
c+w : 从光标所在位置删除至单词的结尾(同时变为 编辑模式)复制内容
yy : 复制光标当前行
n+yy : 向后复制n行内容(包括当前行)
p : 对复制(删除)后的内容进行粘贴操作快捷操作
r+字符 : 快速替换单个字符
u : 撤销undo
. : 点,重复执行上一次命令
J : 大写J,合并两行
1.2 编辑模式
vi被运行时,通常处在命令模式下,键入a、i、o、s等命令 可以使vi进入到编辑模式,按Esc键返回命令模式。
a 光标向后移动一位进入编辑模式
i 光标所在位置不变进入编辑模式
o 新起一行进入编辑模式
s 删除光标所在字符进入编辑模式
1.3 尾行模式
将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。键入冒号(:)即可从命令模式进入尾行模式,删除尾行的全部内容或者按Esc键即可返回命令模式。
:w
//对编辑后的文档进行保存:q
//退出vi编辑器:wq
//保存并退出编辑器:q!
//强制退出(不保存):w!
//强制保存:wq!
//强制保存退出
:set number 或 :set nu
//给编辑器设置行号:set nonumber 或 :set nonu
//取消行号设置:n(数字)
//光标定位到第n行:/内容/ 或 /内容
//内容查找(n下一个 N上一个)
内容替换(cont1替换为cont2)
:s/cont1/cont2/
// 替换光标所在行的第一个目标:s/cont1/cont2/g
// 替换光标所在行的全部目标:%s/cont1/cont2/g
// 替换整个文档的全部目标