VI可能是在Linux中使用比较频繁的文本编辑器,如果不能熟练使用VI,在一定程度上会影响工作效率,所以在这里记录一下VI的常用命令及操作方式
在[root@test ~]# vi carrie.txt ,进入vi的默认模式,在此模式下所有的用户输入都视为命令,如果vi打开的文本不存在,则在打开的目录下,自动新建一个文档。
(1)进入vi编辑模式
在vi的默认模式中,直接在界面中输入:
i 在光标所在位置开始编辑;
a 在光标所在位置的下一个位置开始编辑;
o 在光标所在行的下一行的开始编辑,并插入空白行;
esc 退出编辑,进入命令模式
(2)vi命令模式
光标定位
0 移动光标到行首
$ 移动光标到行尾
/carrie 从上往下开始查找包含carrie的内容,n跳到下一个;N跳到上一个,查找样式变为 ?carrie
? +查找内容 从下往上开始查找,n跳到上一个;N跳到下一个,查找样式变为 /carrie
撤销和重复
u 撤销上一个动作;
. 重复上一个动作;
复制 粘贴 删除(命令模式不显示)
nyy 复制光标所在的向下n行内容
p 在光标所在位置粘贴复制的内容
ndd 删除光标所在的向下n行内容
shift+g 到文件末尾
x 删除当前位置字符
dd 删除删除整行
复制 粘贴 删除(命令模式显示)
:set number 显示行号
:set nonu 取消显示行号
:1,3y 复制第一行到第三行
:1,3d 删除第一行到第三行
:1,3s/str/str_new/g 将第一行到第三行的str替换为str_new,如果一行有多个str都替换
:1,3s/str/str_new/ 将第一行到第三行的str替换为str_new,如果一行有多个,只替换第一个
:1,3g/str/d 删除第一行到第三行包含str字符串的行
(3)退出VI
:q 退出vi
:q! 不保存退出
:wq 保存退出
w 保存 ! 强制执行操作