在 Unix "less" 中,我可以跳到不包含 X 的下一行吗?

deh*_*ann 21 unix grep less

在Unixless工具中,是否可以跳转到包含某个表达式的下一行?

有时我必须查看包含数千个类似相邻行的文件,例如,所有这些行都说“计算某物”,而我对当前块之后的下一行感兴趣,该行不包含“计算”一词。

Cas*_*der 32

是的,这是非匹配搜索功能,例如:

less file.conf

然后你输入/,然后你!的最后一行应该是这样的:

Non-match /
Run Code Online (Sandbox Code Playgroud)

然后输入你的模式,例如Non-match /^#寻找第一行而不开始#

相反的!性格你也可以使用Ctrl+N

  • 太棒了。无法期待更好的答案。 (2认同)

sle*_*ske 5

作为休闲编码器答案的补充:

您还可以完全过滤掉这些行:

<logfile grep -v mypattern |less 
Run Code Online (Sandbox Code Playgroud)

缺点是你必须退出并重新启动grep才能改变模式;优点是您不想看到的线条是隐藏的,这样可以更容易地在您感兴趣的线条中发现有趣的图案。