【Linux】vi/vim编辑器实用小技巧

1 搜索关键字/高亮显示

搜索NA关键字
输入/NA、?NA或者?\<NA\>回车后高亮页面上搜索到的关键字
【Linux】vi/vim编辑器实用小技巧
快捷键是shift+#
把光标移到需要查找的字符串上按下shift+#
【Linux】vi/vim编辑器实用小技巧

‘/’和‘?’区别
‘/’是自上而下由左到右进行搜索查找
‘?’是自下而上由右到左进行搜索查找
可以使用‘n’键在各个高亮的关键字和行之间切换来查看区别
取消高亮:
在vi的命令行模式下输入nohl
:nohl
【Linux】vi/vim编辑器实用小技巧

2 去除vi粘贴多行字符串时行首多余空格

当我们由其他地方拷贝多行字符串到编辑器内可能出现下面的情况导致缩进异常,粘贴的代码不满足预期
【Linux】vi/vim编辑器实用小技巧
这时可以在命令模式下输入set paste后再进行粘贴操作
效果如下:
【Linux】vi/vim编辑器实用小技巧
退出paste状态
set nopaste
参考解决vim粘贴多行命令时行首多出很多空格

3 行号显示/隐藏

set nu:显示行号
set nonu:隐藏行号
参考【Linux】vim编辑器行号显示/隐藏

4 快速定位到某一行

在命令行模式(通过Esc键进入)下输入以下命令
gg:输入两次小写的‘g’将光标定位到行首。
G:输入大写的‘G’将光标定位到行尾。
33gg或者33G:将光标定位到33行的位置,注意行号是由1开始的,可以结合上面的set nu显示行号功能进行验证

5 多行复制(y)/剪切(c)/粘贴(p)

比如复制下图中2,3行,插入到第4行后
具体操作:

  • 光标移到第2行,输入‘2yy’或‘y2y’(由光标所在行开始拷贝两行)
    【Linux】vi/vim编辑器实用小技巧
  • 将光标移到第4行,输入‘p’(将上面拷贝的2,3两行的字符串贴到第4行后面)
    【Linux】vi/vim编辑器实用小技巧【Linux】vi/vim编辑器实用小技巧
操作 描述
yw 复制一个单词
yl 复制一个单词
yy 复制1行
5yy或y5y 复制5行

将复制操作的‘y’替换为‘c’是剪切操作

5 快速删除多行字符

单行删除:命令模式下将光标移到需要删除的行上,按两下‘d’键删除对应的行
多行删除

  • '2d’或者’2,d’删除第2行
  • '2,3d’删除2,3两行
  • '2,.d’删除第2行到目前光标所在的行
  • '2,$'删除第2行到末尾行
    【Linux】vi/vim编辑器实用小技巧
    【Linux】vi/vim编辑器实用小技巧