vim的三种常用模式
命令模式、输入模式和编辑模式
①命令模式:通过vi 文件名即进入命令模式
命令模式下可以通过上下左右键移动光标的位置,进程内容的复制、粘贴、替换、删除等操作
i 在当前位置生前插入
I 在当前行首插入
a 在当前位置后插入
A 在当前行尾插入
gg 将光标移到文件头
G 将光标移到文件尾
x 剪切光标右边1个字符
[n] x 剪切光标右边n个字符
X 剪切光标左边1个字符
[n] X 剪切光标左边n个字符
yy 复制1行
[n] yy 复制n行
dd 删除(剪切)1行
[n] dd 删除(剪切)n行
p 在光标之前粘贴
P 在光标之后粘贴
dgg 剪切光标以上的所有行
dG 剪切光标以下的所有行。
②输入模式:在命令模式下,按下a、i、I、A等键可以进入到输入模式,编辑文件
③编辑模式:在命令模式下,按‘ : ’键,即可进入编辑模式
编辑模式下可以设置启用vim的某个配置项(单次编辑有效),或者查找替换关键字等。
:q 未修改时退出
:q! 放弃修改并退出
:wq 保存并退出。
:x 保存并退出。
:open filename 在当前vim窗口打开一个新文件
:split filename 在新窗口打开一个文件
:bn 切换到下一个文件
:bp 切换到上一个文件
:args 查看当前打开的文件列表
/关键字 正向查找匹配到关键字的内容,按n查找下一个,按N查找前一个
?关键字 反向查找匹配到关键字的内容,
:s/old/new/g 将old替换为new,替换当前行的所有匹配
:10,15 s/old/new/g 将10-15的old全部替换为new,包含10行和15行
:%s/old/new/g 将old替换为new,替换整个文件的所有匹配
:10,15 d 删除第10-15行
:1, 10 m 20 将第1-10行移动到第20行之后。
5,10 s/^/#/g 注释shell脚本第5-10行
5,10 s/^#//g 解除shell脚本5-10行的注释
:%s/^/#/g 注释整个文档
:5,10 s/^/\/\//g 注释C代码第5-10行
:5,10 s/\/\///g 解除C代码5-10行的注释
:set ignorecase 忽略大小写的查找
:set noignorecase 不忽略大小写的查找
:scriptnames 查看vim脚本文件的位置,比如.vimrc文件,语法文件等