vi的三种模式:
命令模式
浏览内容,复制、删除、剪切
输入$,光标跳转到所在行行尾,输入^或者0,跳转到当前行行首
G跳转到最后一行,gg跳转到第一行
vi + /etc/passwd 光标直接定位到最后一行
vim +20 /etc/passwd 光标定位到第20行
yy 复制一行 复制两行2yy.....
p 粘贴
dd 2dd 3dd删除和剪切(输入p)
/xxxx 搜索 n下一个匹配的字符,N上一个匹配的字符
! 命令 临时执行命令,不会对vim正在编辑的文件有任何影响。命令执行后按回车返回当前vim
插入模式
i在光标位置插入
I在光标行首插入
o在光标当前行下另起一行插入
O在光标当前行上另起一行插入
a A
底行模式
:wq === :x === shift+zz w write保存 q quite退出 保存并退出
:r ! 命令 把命令执行的结果读取到光标所在行
:r 文件 把文件读取到光标所在行
: 1,5 w new-passwd 将第一行到第五行保存为一个新的配置文件new-passwd
:q! 强制退出
:e! 恢复文件到打开时的内容
u 相当于windows的ctrl+z
U撤销光标所在的行的修改
:set nu显示行号
:set nonu去掉行号
:1,11d 删除1-11行 :nd 删除第n行‘
:s/root/ROOT/g将光标所在行的root全部替换成ROOT
:%s/root/ROOT/g将文件中所有的root替换为ROOT
:1,5s/root/ROOT/g将1-5行的root替换为ROOT
可视模式
先输入ctrl+v进入可视模式,使用光标选中要选中的行,输入大写I,输入想要添加的内容,最后按ESC,就将选中的行批量插入了输入的内容(常用于批量注释行)
批量删除之前插入的内容,ctrl+v ,光标选中,d
vi的配置文件在/etc/virc 可以编辑其中的内容,例如添加行号set nu,再使用vi编辑文件时默认就带了行号。
vim -O 配置文件1 配置文件2 一起垂直显示两个配置文件(左边第一个文件,右边为第二个文件),可以切换编辑,通常用于要复制某一个文件的某些内容到另一个文件。使用ctrl+w,松开后按右方向键切换到第二个文件;使用ctrl+w,松开后按左方向键切换到第一个文件。:wqall同时保存
查看vim使用说明:vimtutor 显示为中文:LANG=zh_CN.UTF-8 vimtutor