less 命令非常适合在终端中查看文本文件的内容,且不会使屏幕看起来很混乱而至眼花缭乱。
如果你正在查看一个非常大的文件,并且想在其中查找一个特定的文本,可以在 less 命令中执行搜索,而不需要手动执行。我们今天来介绍下如何实现。
使用 less 命令进行搜索


你还可以使用空格键和 b 键在页面上下移动,匹配项(如果有)会被高亮显示。

执行不区分大小写的搜索
-I

实际上,它是切换了是否区分大小写的搜索;再按一次,搜索将再次区分大小写。
另外,可以使用小写的 i 来代替 I,但是如果要搜索的字符串中含有大写字母,i 是不起作用的。所以最好使用大写的 I。
如果需要,在使用 less 命令的时候就启用不区分大小写的模式:
less -I filename
注:可以使用 /!pattern 来搜索与表达式不匹配的行。
只显示匹配行
如果觉得使用 n 或者 N 来前后查看匹配项比较麻烦,可以通过使用 &pattern 来代替 /pattern 执行搜索,这样可以在 less 命令中只显示匹配行:
&pattern

可以使用箭头键在各行之间移动,在底部会显示行号。但这行号是不连续的,因为终端中只显示了匹配行。
在使用 less 命令的同时启动搜索
事实上,在使用 less 命令打开文件后,即可进行搜索:
less -p pattern filename
还可以通过添加 -I 选项来执行不区分大小写的搜索:
less -Ip pattern filename
在这里需要注意,上述选项是有先后顺序的,如果使用 -pI ,则不会起作用。
因为 less 只是一个查看器,所以它不能像 vim 那样进行查找替换。在使用 less 查找内容的时候,除了我们上述介绍的,还有其他的一些功能,大家感兴趣的可以查看一下 man 手册。
以上就是本次分享全部内容,欢迎讨论。
文章转载自TIAP,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




