要仅打印与搜索匹配的文件名称,请执行以下操作:
ag -l
如果我只想通过列表中的文件进行grep,我应该使用什么?或者也许可以用这种方式链接搜索?
答案 0 :(得分:0)
使用标准输入重定向:
ag "SEARCH_PATTERN" < file1, file,2, file3...
使用-g选项使用通配符搜索目标文件。模板看起来像这样:
ag -g "FILE_PATTERN" "SEARCH_PATTERN"
所以一个例子如下:
ag -G '.*.txt' "pattern"
或者使用shell for循环从包含条目列表的.txt文件中将文件或搜索模式提供给ag;例如:
while IFS= read -r patterns; do ag -o "$patterns" ~/somewhere ; done < names.txt
答案 1 :(得分:0)
在此页面上,我都为ag -l
返回文件名列表和ag
接受文件标准输入这一事实感到高兴。那让我思考了另一种对我来说非常有效的方法。想要分享
ag -l <first_search> | xargs ag -l <second_search> | xargs ag -l ...