grep不显示路径/文件:行
你如何grep,只返回匹配的行? 即,结果中省略了路径/文件名。
在这种情况下,我想查看当前目录中的所有.bar文件,搜索术语FOO
find . -name '*.bar' -exec grep -Hn FOO {} ;
无需find
。 如果您只是在特定目录中查找模式,这应该就足够了:
grep -hn FOO /your/path/*.bar
其中-h
是隐藏文件名的参数,如从man grep
:
-h,--no-filename
抑制输出上文件名的前缀。 当只有一个文件(或只有标准输入)要搜索时,这是默认设置。
请注意,您正在使用
-H,--with-filename
打印每场比赛的文件名称。 当有多个文件要搜索时,这是默认值。
只需将-H
替换为-h
。 查看man grep
了解更多关于选项的细节
find . -name '*.bar' -exec grep -hn FOO {} ;
如果你运行man grep
你会看到这个:
-h, --no-filename
Suppress the prefixing of file names on output. This is the default when there
is only one file (or only standard input) to search.
链接地址: http://www.djcxy.com/p/8295.html
上一篇: grep without showing path/file:line
下一篇: How to exclude certain directories/files from git grep search