VIM的使用
VI与VIM都是Linux系统上优秀的编辑器。VIM是VI的增强版,VIM在VI的基础上增加了很多插件方便程序员使用。
VIM命令模式
Ctrl+C锁定
Ctrl+Q解除
光标移动
上下左右键,首先键盘的上下左右键可以控制光标的移动。但是一般情况系统第一次使用为更细VI/VIM时使用上下左右键无效。这一点需要注意。
HJ左下 KL上右
#h/l/j/k: 移动#个字符,如:2h -> 向左移动两个字符
定位
同行跳转
0: 跳转到同行的行首 注意这里的数子是键盘上面的数子
^: 行首的第一个非空白字符
$(Shift+4): 跳转到同行的行尾
行间跳转
gg: 跳转到首行
G: 跳转到最后一行
#gg/G: 跳转到第#行
删除/撤销
x: 删除一个字母
dw: 删除一个单词 从光标开始删除
d0: 删除到行首
D(d$): 删除到行尾
dd: 删除整行 ndd删除n行
u: 撤销
复制
yy: 复制一行 nyy: 复制n行
dd: 剪切一行 ndd: 剪切n行
p: 往下粘贴 P: 往上粘贴
可视模式复制粘贴
- v进入可视模式
- 移动光标选中内容
- 按y复制内容
- 移动光标到目的地
- 按p/P将内容粘贴
查找
/要查找的值 n/N上下
?要查找的值
直接查找光标所在单词
#(shift+3)
格式化
>> : 当前行右移一个Tab
<< : 当前行左移一共Tab
n>> : 多行右移
n<< : 多行左移
gg=G : 文件整体调格式
vim中查看man帮助文档
按k或者nK (2K)
VIM编辑模式
进入编辑模式口诀:a,ios。
- a:在光标后一个位置开始。 A:行尾开始
- i:在光标当前位置开始。 I:行首开始
- o:新建下一行开始。 O:新建上一行开始。
- s:删除当前一个字母变成插入模式。 S:删除整行变为插入模式。
VIM末行模式
进入末行模式:按Esc进入;
:!后可以命令 如 :!ls -l
: s/要替换的内容/替换后的内容/。 ::只改变当前行的首个匹配
: s/要替换的内容/替换后的内容/g。 ::替换本行所有匹配。
:%s/要替换的内容/替换后的内容/。 ::每行第一个匹配
VIM替换命令语法
:[addr]s/源字符串/目标字符串/[option]
全局替换:
:%s/源字符串/目标字符串/g
参数说明:
- [addr]——表示检索范围,省略时表示当前行。
- “%”:表示整个文件,同"1,$";
- “.,$”:从当前行到文件尾;
- s:表示替换操作
- [option]:表示操作类型
- g:全局替换
- c:表示进行确认
- p:表示替换结果逐行显示(Ctrl+L恢复屏幕)
- 省略option:默认仅对每行第一个匹配串进行替换
- 如果在源字符串和目标字符串中有特殊字符,需要使用“\”转义
VIM保存退出
保存:w
退出:q
。
:wq 保存退出
:w 只保存
:q 退出
:q! 强制退出
:x 保存退出
ZZ 保存退出 命令模式
VIM分屏
sp 文件名 横屏
vsp 文件名 竖屏
:q 退出一个文件
:qall 退出全部
:wqall 保存退出全部
Ctrl+W切换