Vim小技巧

1. Vim查找与替换

当文档很长时,我们可以通过查找快速定位要找的内容,在Vim中通过“/”关键词实现自上往下的查找功能,如,/host在当前文档的光标处向下查找host并显示,如果一个文档中有多个host,可以通过快捷键 n 跳转至下一个匹配的关键词处,快捷键 N 将跳转至上一个匹配的关键词处。另外,“?”关键词实现了自下往上的查找功能,如,?host从当前文档的光标处向上查找host并显示,此时快捷键 n 表示查看上一匹配,N 表示查看下一匹配。

Vim提供了非常好用的替换功能,可以快速完成大量的替换工作,下面举例说明:

cp /etc/passwd /root/

vim /root/passwd

通过上面两条命令复制一份临时测试文档并编辑,我们可以对该文件实现多种替换功能,如下表所示(在普通模式下,输入冒号“:”进入命令模式完成替换命令)。

指令 功能描述
:s/root/admin/ 将光标当前行中第一个出现的root替换为admin,没有则不替换
:s/root/admin/g 将光标当前行中所有的root 替换为admin
:3,5 s/sbin/bin/g 将第三行至第五行之间的所有sbin替换为bin
:%s/nologin/fault/g 将所有行的nologin都替换为fault

2. 显示行号

显示当前行是第几行的方式有很多,可以通过为文档添加行号来实现,添加行号的方法是在命令模式下输入:set number 或简写:set nu即可,取消行号输入:set nonumber 或简写:set nonu。

3. 忽略大小写

在Vim中查找时,你可能不清楚所要找的关键词的大小写,而Vim默认是区分大小写的,这时可以通过在命令模式下输入:set ignorecase,实现忽略大小写。

4. 多窗口编辑

当需要同时编辑多个文档时,分割窗口就尤为重要了,最简单的方式是在命令模式下输入:split。如此可以实现编辑同一个文档的不同行,至于窗口的切换,可以使用如下快捷方式:

Ctrl+w+h 快捷键表示跳转至左边一个窗口,Ctrl+w+l 快捷键表示跳转至右边一个窗口,Ctrl+w+j 快捷键表示跳转至下面一个窗口,Ctrl+w+k 快捷键表示跳转至上面一个窗口。

在命令模式下输入:close,可以关闭当前窗口。

在命令模式下输入:split second.txt,此命令会分割窗口并打开新的文件,如此实现多窗口多文件的编辑工作。默认的:split为水平分割窗口,垂直分割可以使用:vsplit指令。

5. 执行Shell命令

使用Vim编辑文档的过程中,如需要执行一条Shell命令而不想退出Vim编辑器,可以通过!{命令}的方式实现。例如,需要查看当前目录下所有目录和文件的名称,则在命令模式下输入指令:!ls即可,执行完成后按回车键返回Vim编辑器。

6. 自动补齐

如果需要输入的内容在前面的行中已经出现过,那么Vim可以根据上文内容自动补齐输入。

例如,在文件第三行定义了一个变量FIRST_TIME=09,以后需要再次输入FIRST_TIME时,可以仅输入FI后使用快捷键Ctrl+N,实现自动补齐功能。

 

参考自,丁明一    编著    《Linux运维之道》

posted @ 2019-10-02 19:12  OpsDrip  阅读(397)  评论(0编辑  收藏  举报