我有一个由数千个子目录组成的目录树,但我经常只需要 grep 那些目录的一小部分。我怎样才能grep
只有那些匹配模式的子目录?
例如,假设我有这些我想要 grep 的子目录:
...
...
...
/foo
/fooLib
/fooHandler
/fooGizmo
...
...
...
Run Code Online (Sandbox Code Playgroud)
在...
上述条目代表的成千上万的其他目录,我的不希望到grep英寸
假设我正在寻找 的所有实例bar
,如果我这样做:
grep -n --recursive bar *
Run Code Online (Sandbox Code Playgroud)
我会找到我要找的东西,但在所有目录中。如何仅在与模式匹配的子目录中进行搜索foo*
?
Rah*_*til 14
您可以使用 grep 并找到如下组合:
find /{foo,fooLib,fooHandler,fooGizmo} -type f -exec grep -l "test" {} \;
Run Code Online (Sandbox Code Playgroud)
或者你可以使用
find /foo* -type f -exec grep -l "test" {} \;
Run Code Online (Sandbox Code Playgroud)
或者只使用 grep
grep -R "test" /foo*
Run Code Online (Sandbox Code Playgroud)