grep 从哪个文件中找到匹配项

grep 从哪个文件中找到匹配项

当做这样的事情时:

cat *.* | grep mystring

是否有可能知道每个匹配项来自哪个文件?如果不能,那还有什么替代方案?

答案1

使用grep -l

-l, --files-with-matches Suppress normal output; instead print the name of each input file from which output would normally have been printed.

例如

$ echo foo > file1 $ echo bar > file2 $ grep -l foo * file1

或者使用行号在哪里出现字符串:

$ grep -rn foo . file1:1:foo

相关内容