我怎样才能让命令grep -w
显示包含匹配项的整行?我需要强制图案匹配整个单词,但我需要看到整行。
这是我的命令:
cat /var/log/message.log | grep -w foobar
答案1
如果我没记错的话,grep
显示已找到匹配项的整行。对于特定的单词,我grep
直接使用 而不是cat | grep
。
grep -w "foobar" /var/log/messages.log
如果您没有看到任何其他输出,则意味着该行上没有其他任何内容。
答案2
另一种方法(除了 -w 选项)是通过适当的模式匹配整行:
cat /var/log/message.log | grep -P \^\.\*foobar\.\*\$
或不区分大小写:
cat /var/log/message.log | grep -iP \^\.\*foobar\.\*\$
这里的一个优点是它可以独立于文件使用,例如:
xauth list | grep -iP \^\.*foobar\.\*\$