说明
vi 是 Linux 命令下的重要编辑器. vim 是 vi 命令的增强版. vim 与 vi 是兼容的.
三种模式
命令模式 :
可以实现特殊功能操作
编辑模式 :
可以编辑文件内容信息
普通(底行)模式 :
可以输入特殊命令信息
命令模式 -i-> 编辑模式 -esc-> 命令模式
命令模式 -:-> 底行模式 -esc-> 命令模式
命令模式
:wq : 退出并保存
:wq! : 退出并强制保存," ! " 为强制的意思
:q! : 强制退出, 不保存
:set nu : 显示行号
:set nonu : 取消行号
进入编辑模式
i: 在光标所在位置直接进入编辑模式
I: 将光标切换到行首进入编辑模式
a: 在光标所在位置下一个字符进入编辑模式
A: 将光标切换到行尾进入编辑模式
o: 在光标所在行的下面插入新的一行, 并进入编辑状态
O: 在光标所在行的上面插入新的一行, 并进入编辑状态
s: 删除光标所在位置字符并进入编辑状态
S: 删除光标所在行并进入编辑状态
普通模式
/查找的内容 : 从光标位置开始, 向下寻找与"内容"相符的字符串
?查找的内容 : 从光标位置开始, 向上寻找与"内容"相符的字符串
/查找的内容\c : 忽略大小写查找文件中数据
n : 从光标位置开始, 向下重复前一个搜索的动作
N : 从光标位置开始, 向上重复前一个搜索的动作
快速移动光标 (命令模式)
Shift+g : 切换到文件的最后一行
G : 切换到文件的最后一行
gg : 切换到文件的第一行
行数G : 切换到文件指定行
行数gg : 切换到文件指定行
^ : 切换到一行的开头
$ : 切换到一行的结尾
特殊编辑操作
yy : 复制光标所在的当前行
nyy : 复制光标开始向下共 n 行
p : 将复制的内容粘贴到光标的下一行
np : 将复制的内容粘贴到光标的下一行n次
dd : 删除(剪切)光标所在的当前行
ndd : 删除从光标开始向下共 n 行
dG : 删除光标之后的所有行内容
C : 删除光标之后的内容并进入编辑状态
r : 替换指定字符信息 ( Ctrl+v )
R : 连续替换多个字符信息 ( Ctrl+v )
命令模式特殊操作
Ctrl+r : 取消撤回
Ctrl+v : 选中多行
u : 撤回操作