通常与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" {} +