如何使用一次 ag 搜索找到的文件作为第二次 ag 搜索的域?

joa*_*him 4 ag

假设我这样做了ag -l foo。这给了我一个文件列表。

如何再次使用 ag 在这些文件中进行搜索?

And*_*ter 7

假设您在 bash shell 中,请执行以下操作:

ag whatever $(ag -l foo)
Run Code Online (Sandbox Code Playgroud)

因此,要查找与 cat 和 Dog 匹配的所有文件:

ag cat $(ag -l dog)
Run Code Online (Sandbox Code Playgroud)

您还可以使用xargs

ag -l dog | xargs ag cat
Run Code Online (Sandbox Code Playgroud)

如果您使用ack另一个类似 grep 的工具,您可以使用该-x选项从标准输入读取输入文件列表:

ack -l dog | ack -x cat
Run Code Online (Sandbox Code Playgroud)