1. 三种模式
命令(默认)、尾行、编辑模式
2. 尾行模式
:
:q 退出vi编辑器
:w 保存修改
:wq 保存并退出编辑
:q! 强制退出,不保存修改
:wq! 强制保存退出
:set number (:set nu) 给编辑器设置序号
:set nonumber (:set nonu) 取消序号显示
:/内容/ 搜索指定内容,小写"n"寻找下一个,大写"N",找上一个
/内容 搜索指定内容
:s/被替换内容/替换内容/ 替换当前行的第一个目标内容
:s/被替换内容/替换内容/g 替换当前行全部目标
:%s/被替换内容/替换内容/g 替换文档的全部目标
:n 跳转到n行
3. 命令模式操作
① 光标移动
字符级
上 下 左 右(键盘)
h(左) j(下) k(上) l(右)
单词级
e (本)下个单词的尾字母end
w 下个单词的首字母word
b (本)上个单词的首字母before
行级
$ 行尾
0 行首
段落级
{ 本(上一个)段落首部
} 本(下一个)段落尾部
屏幕级
L 屏幕尾部
H 屏幕首部
不支持跨屏幕跳转
文档级
G 文档尾部
1+G 文档首部(1和G联合使用)
n+G 定位到文档的第n行
② 删除内容
dd 删除本行
n+dd 当前行开始往下删除n行
x 删除单个字符
d+光标移动的区域
d+$ 从当前位置一直删除至行尾(包括光标所在位置)
d+0 从当前位置一直删除至行首(保留光标所在字母)
d+e 从当前位置一直删除至本单词结尾
d+w 从当前位置删除至下个单词的首字母(下个单词首字母有保留)
d+} 删除到段落的尾部(包括光标所在字母)
d+{ 删除到段落的首部(不包括光标所在字母)
d+n+G 删除到第n行(连同光标所在行,不用考虑向下、向上删除)
③ 内容复制
yy 复制本行
p 粘贴内容
[删除的内容也可以被粘贴,
删除内容和复制内容一样被先存入系统的缓存里边]
n+yy 从当前行往下复制n行
y+光标移动的区域
④ 快捷操作
r+字符 快速替换单个字符
u 撤销undo
. 点,重复上一次命令
J 大写J,合并两行
4. 编辑模式
从命令模式进入编辑模式
a: 光标向后移动一位
i: 光标没有动作
o: 另起空白行进入编辑模式
s: 删除光标所在字母
从编辑模式退回命令模式
esc
对编辑的内容进行保存
编辑模式----》命令模式----》尾行模式(保存退出动作)