输入终端命令:!+命令
sudo保存:w !sudo tee %
显示当前路径::pwd
查看缓冲区::ls
打开缓冲区文件:buffer 2
命令补全:Tab键
:r!date读shell日期到vim
全文缩进:gg=G或G=gg
批量注释:CTRL+V,块选择模式,选择多行,I插入注释,esc。
删除注释:同上,d删除。
完全匹配查找:/<word>
设置文件类型:set filetype=html
文件状态
- (非活动的缓冲区)
a (当前被激活缓冲区)
+ (已经更改的缓冲区)
h (隐藏的缓冲区)
% (当前的缓冲区)
# (交换缓冲区)
= (只读缓冲区)
标签
:Hexplore [dir] 执行 :Explore,用 |:belowright| 水平分割。缩写He
:Hexplore! [dir] 执行 :Explore,用 |:aboveleft| 水平分割。
:Vexplore [dir] 执行 :Explore,用 |:leftabove| 垂直分割。缩写Ve
:Vexplore! [dir] 执行 :Explore,用 |:rightbelow| 垂直分割。
:Texplore [dir] 执行 :Explore,在标签页中打开。 缩写Te
gt 下一标签页
gT 上一标签页
数字gt 到第几页
tabs 查看所有页
退出所有::qa
可视
可视选整行:V
可视跳转:数字+G /数字+gg
可视换头尾:o
上一次可视:gv
可视另存::write new.txt
可视排序::sort
替换
vi/vim 中可以使用 :s 命令来替换字符串
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
n 为数字,若 n 为 .,表示从当前行开始到最后一行
:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/