Linux学习 - 文本编辑器Vim
一、Vim工作模式
二、命令
插入 |
a | 光标后插入 |
A | 光标所在行尾插入 | |
i | 光标前插入 | |
I | 光标所在行首插入 | |
o | 光标下插入新行 | |
O | 光标上插入新行 | |
删除 |
x | 删除光标处字符 |
nx | 删除光标处后n个字符 | |
dd | 删除(剪切)光标所在行 | |
ndd | 删除(剪切)光标后n行 | |
dG | 删除光标后所有行 | |
D | 删除光标到行尾的内容 | |
:ni,n2d | 删除指定范围的行 | |
复制、粘贴 |
yy | 复制当前行 |
nyy | 复制n行 | |
p、P | 粘贴在当前行下、行上 | |
查找、替换、取消 |
/字符串 | 查找 |
r | 替换光标所在处字符 | |
R | 从光标处开始替换 | |
u | 取消上一步操作 | |
:%s/旧字符串/新字符串/g :%s/旧字符串/新字符串/c |
全文替换 | |
:n1,n2s/旧字符串/新字符串/g | 范围替换 | |
保存、退出 |
:w | 保存修改 |
:w [新文件名] | 另存为指定文件 | |
:wq | 保存并退出 | |
ZZ | 保存并退出 | |
:q! | 不保存退出 | |
:wq! | 保存并退出(所有者及root可使用) | |
定位 |
:set nu | 设置行号 |
:set nonu | 取消行号 | |
gg | 到首行 | |
G | 到尾行 | |
nG | 到第n行 | |
:n | 到第n行 | |
Ctrl + 9 | 到行首 | |
Ctrl + 0 | 到行尾 |
三、Vim技巧
:r 文件名 | 将文件内容导入到当前文件光标所在位置 |
:!which 命令 | 查看命令所在路径 |
:r !命令 | 导入命令执行结果 |
:map 快捷键 触发命令 | 定义快捷键 |
:n1,n2s/^/#/g | 连续行注释 |
:n1,n2s/^#//g | 取消连续注释 |
:n1,n2s/^/\/\//g | 在行首连续插入// |
:ab zhw ZhengHuiwei | 用ZhengHuiwei替换zhw |
map范例
:map ^P I#<ESC> Ctrl + P 快捷键,实现在行首插入#并返回命令模式
:map ^B 0x Ctrl + B 快捷键,实现删除行首字符、
注:使用 Ctrl + v + P 可打出 ^P;
必须将所有的快捷键写到每个用户的配置文件中快捷键才能永久有效;
如用户zhw,则配置文件在 /home/zhw/.bashrc 文件中;