可以设置grep(从命令行)来突出显示匹配行的部分吗?

Her*_*rms 4 command-line grep cygwin

我通过cygwin从命令行使用grep.我想知道是否有任何方法可以让它突出显示与正则表达式匹配的每一行的部分.我看到的最接近的是-o选项,但只输出匹配区域,我希望看到整行.

Pau*_*xon 11

看看--color(或--colour)选项,如

grep --color POST access_log 
Run Code Online (Sandbox Code Playgroud)

默认情况下,这使用"自动"模式,该模式仅在输出到终端时包含颜色代码,但在将输出传输到其他位置时则不包括.如果你想将颜色输出到stdout以外的其他东西,那么使用--color = always

有关更改颜色的方法,请参阅链接的文章,并使grep默认使用此选项.

  • 我添加了--color = always,但这似乎打破了链接的greps,可能是因为颜色控制字符被正则表达式拾取.我想出的修复方法是在最后用链接重复链中的第一个grep,使用--color选项.我失去了文件名的颜色,但它仍然为匹配着色,这是重要的部分. (2认同)

Dav*_*sta 8

试试--color开关.