查找后的 grep 不显示文件内容

查找后的 grep 不显示文件内容

通常与grep -r "word" <path>您一起看到:

<file_path>: <line_with_word>

但如果你做了类似的事情:

find . -type f -name "*.py" -exec grep "word" {} \;

你只能看到内容,用 grep -l 只能看到文件,而我两者都想要。

答案1

如果您使用的是 GNU grep,该-H选项将确保在所有情况下输出都以文件名为前缀:

find . -type f -name "*.py" -exec grep -H "word" {} \;

顺便说一句,您可以+在此处使用而不是一次\;运行尽可能多的文件:grep

find . -type f -name "*.py" -exec grep -H "word" {} +

相关内容