bzgrep不打印文件名

时间:2015-11-18 23:26:30

标签: unix grep

find . -name '{fileNamePattern}*.bz2' | xargs -n 1 -P 3 bzgrep -H "{patternToSearch}"

我正在使用上面的命令从具有我正在寻找的模式的文件集中找出.bz2文件。它确实通过文件,因为我可以看到我试图在控制台上打印的模式,但我没有看到文件名。

1 个答案:

答案 0 :(得分:0)

如果查看bzgrep脚本(例如OS {的this version),您会看到它将bzip2grep的输出进行管道传输。该进程丢失了原始文件名。 grep永远不会看到它们,因此无法将它们打印出来(尽管有-H标记)。

这样的事情应该做,不完全是你想要的,但类似的东西。 (你可以通过将bzgrep的输出汇总到sed / awk来获得你期望的前缀,但是写出来的命令不那么简单。)

find . -name '{fileNamePattern}*.bz2' -printf '### %p\n' -exec bzgrep "{patternToSearch}" {} \;
相关问题