常用操作
插入命令
命令 | 作用 |
---|
a | 在光标所在字符后面插入 |
A | 在光标所在行尾插入 |
i | 在光标所在字符前插入 |
I | 在光标所在行行首插入 |
o | 在光标下插入新行 |
O | 在光标上插入新行 |
定位命令
命令 | 作用 |
---|
:set nu | 设置行号 |
:set nonu | 取消行号 |
gg G | 到第一行 到最后一行 |
nG | 到第n行 |
:n | 到第n行 |
$ | 移至行尾 |
0 | 移动至行首 |
删除命令
命令 | 作用 |
---|
x | 删除光标所在字符 |
nx | 删除光标所在处后n个字符 |
dd | 删除光标所在行,ndd删除n行 |
dG | 删除光标所在行到文件末尾内容 |
D | 删除光标所在处到行尾内容 |
:n1,n2d | 删除指定范围的行 |
复制剪切命令
命令 | 作用 |
---|
yy | 复制当前行 |
nyy | 复制当前行以下n行 |
dd | 剪切当前行 |
ndd | 剪切当前行以下n行 |
p ,P | 粘贴在当前光标所在行下或行上 |
替换和取消命令
命令 | 作用 |
---|
r | 取代 光标所在字符 |
R | 从光标所在处开始替换字符,按Esc结束 |
u | 取消上一步操作 |
搜素和搜索替换
命令 | 作用 |
---|
/string | 搜索指定字符串 搜索时忽略大小写 :set ic |
n | 搜索指定字符串的下一个出现位置 |
:%s/old/new/g | 全文替换指定字符串 |
:n1,n2s/old/new/g | 在一定范围内替换指定字符串 |
保存
命令 | 作用 |
---|
:w | 保存修改 |
:w ne_filename | 另外为指定文件 |
:wq | 保存修改并退出 |
ZZ | 快捷键,保存修改并退出 |
:q! | 不保存修改退出 |
:wq! | 保存修改并退出(文件所有者以及root可使用) |
其他
:r [文件名]
可以在当前文本中导入文件
:!which ls 可以在不退出vim的情况下查找文件
导入命令执行结果 :r !命令
:r !date 导入时间
定义快捷键 map 快捷键 触发命令
范例: :map ^P I #<ESC> //^P 通过 同时按ctrl +v+p 输入
:map ^B 0x
:map ^K iasdsafsafdsaf@126.com<Esc>
1,4s/^/#/g 1到4行首增加#
1,4s/^#//g 1到4行首删除#
:ab mymail 12312@126.com 在vim 增加mymail 回车会替换为12312@126.com
自定义的快捷键重启后会失效,若要持久化保存,将其写到 用户的配置文件中。
例如: vi /root/.vimrc 写到root用户的配置文件中