使用 grep 时,它将突出显示与正则表达式匹配的行中的任何文本。
如果我想要这种行为,但同时让 grep 打印出所有行怎么办?快速浏览完 grep 手册页后,我发现一无所获。
使用确认。看看它的--passthru
此处的选项:ack https://metacpan.org/pod/ack。它还有一个额外的好处,那就是允许完整的 Perl 正则表达式。
$ ack --passthru 'pattern1' file_name
$ command_here | ack --passthru 'pattern1'
您还可以使用 grep 来完成此操作,如下所示:
$ grep --color -E '^|pattern1|pattern2' file_name
$ command_here | grep --color -E '^|pattern1|pattern2'
这将匹配所有线条并突出显示图案。这^
匹配行的每个开头,但不会打印/突出显示,因为它不是字符。
(请注意,大多数设置默认使用 --color。您可能不需要该标志)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)