一尘不染

grep不显示路径/文件:行

linux

你如何grep只返回匹配的行?即结果中省略了路径/文件名。

在这种情况下,我想查看当前目录中的所有.bar文件,并搜索FOO。

find . -name '*.bar' -exec grep -Hn FOO {} \;

阅读 834

收藏
2020-06-02

共1个答案

一尘不染

没必要find。如果您只是在特定目录中寻找模式,就足够了:

grep -hn FOO /your/path/*.bar

-h隐藏文件名的参数在哪里,例如man grep

-h,–no-文件名

在输出中禁止文件名的前缀。当仅搜索一个文件(或仅标准输入)时,这是默认设置。

请注意,您使用的是

-H,–with-filename

打印每个匹配项的文件名。当要搜索多个文件时,这是默认设置。

2020-06-02