vim 常用命令及快捷键
vim是一个编辑器,主要用来创建、编辑文件,以下来介绍 vim 常用的一些命令以及快捷键
复制、粘贴、删除、剪切
复制 yy
复制1行,直接按 yy,将复制光标所在的一行文本
复制多行 n yy, 例如: 10 yy,将复制光标所在位置往下10行内容(包括光标所在行)
粘贴 p
删除 dd
删除一行,直接dd,将删除光标所在的一行文本
删除多行 n dd,例如 10 dd,将删除光标所在位置往下10行内容(包括光标所在行)
剪切 dd
dd同样具有剪切功能,按 p 可直接粘贴
以下操作在命令模式下进行:
r ,替换,将光标所在字符进行替换或者说修改
x,删除光标所在的一个字符
D,将光标所在的地方到行尾删除
u,撤销操作
ctrl+r,还原撤销操作
ctrl+v,进入可视块模式
进入可视块模式后,可以进行多行注释
使用 j k进行上下选择多行,然后按下 I (大写的 i),输入#号,然后按 esc,即可进行多行注释
删除多行注释 ctrl+v,选择需要删除注释的行,按 d即可删除
V,进入可视行模式
命令行模式的一些常用命令:
w 保存
w! 强制保存
wq 保存退出
q 没有任何修改,退出
q! 修改了,不保存,强制退出
wq!强制保存退出
x 保存退出
调用外部命令
!+命令
例如: !cat /etc/passwd !ifconfig
r + 文件名 读取文件内容到光标所在位置
例如:r /etc/hosts 读取hosts文件内容到当前位置
替换、批量替换
this is php! i love php!
把以上的php替换为java, 1 s/php/java/g,这样就完成了替换
说明下命令的参数
1代表 第一行,如果要多行的,可以这样写 1,10,代表1-10行直接的内容,替换整个文档的内容使用 %
s/旧的内容/新的内容
g表示替换全部,不加g只会替换第一个
默认区分大小写,g后面加i则不区分大小写
vim 的一些临时环境设置
set nu 设置行号
set nonu 取消设置行号
noh 取消高亮显示
创建自己的vimrc
在自己的home目录下创建 vim .vimrc
vim 同事打开打开多个文件
以上下方式打开多个文档
vim -o /etc/passwd /etc/hosts
vim -O /etc/passwd /etc/hosts
ctrl+ww在多个文档编辑内切换
退出 qa退出多个文档编辑
vimdiff 对比两个文件的差异
vimdiff /etc/password /etc/hosts