command-line - Silver-searcher 是否能够从文件中获取 PATTERN?

标签 command-line grep ag

有 84 个 PATTERN 需要检查,我将它们存储在文件名 中模式.txt .

silver-searcher (也称为 Ag)能够从 获得这些图案模式.txt ?

grep 有 -f从文件中读取模式的选项,但 Silver-searcher 的手册页没有提及它。

最佳答案

不,ag 中没有类似的 -f 选项。简单的方法是使用循环将模式传递给 ag;例如,您可以使用 while 循环来读取这样的模式:

while read pattern; do ag "$pattern" -G '.*.txt' ; done < patterns.txt

我建议使用 GNU 与 ag 并行的更快方法。 Parallel 和 ag 可以很好地协同工作:
< patterns.txt | parallel 'ag --filename --parallel --color "{}" '

在这里,我将每个模式传递给 parallel,这反过来又会产生许多搜索自己模式匹配的 ag 进程。 Parallel 在启动多少进程方面有些聪明,但您可以根据自己的喜好对其进行调整 ( https://www.gnu.org/software/parallel/man.html )。简而言之,您将通过并行化更快地处理 84 个模式。

关于command-line - Silver-searcher 是否能够从文件中获取 PATTERN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41760079/

相关文章:

powershell - 将 awk 过滤转换为等效的 Windows 命令行

windows - 如何从命令行使用 svn+ssh 和 Tortoise SVN

sql - 使用 sqlplus 设置要返回的最大行数

testing - 如何从命令行使用 junit 运行多个测试类?

grep - 基于缩进的grep

jquery - 使用 jQuery grep() 过滤 JSON 数组

bash - 使用 grep 查找文件并在编辑器中打开

ag 银色搜索者 : List ignored/searched files