grep - 如何并行搜索多个文件中的某个模式并在第一次搜索后停止

标签 grep find xargs head

我正在使用findfolder/*/*/specific_folder -name "file*' -print 0 | xargs -0 -P 8 fgrep -m 1 --no -filename - A 1000 numberpattern | head -n 1

我想在多个文件中并行搜索字符串并在第一个匹配后停止。

我该怎么做?

最佳答案

您可以使用 GNU Parallel 来做到这一点,如下所示:

parallel --halt now,success=1 grep -m 1 PATTERN ::: file*

或者,反过来:

find ... -print0 | parallel -0 --halt now,success=1 grep -m 1 PATTERN

关于grep - 如何并行搜索多个文件中的某个模式并在第一次搜索后停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45151542/

相关文章:

bash - 如何合并两个不包含重复项的csv文件

linux - 使用 wget 同时进行多个下载

linux - 如何使用 git 提取提交者的电子邮件?

bash - 我可以 grep 多个模式但有一些是相反的吗?

linux - 在所有 .htaccess 文件中递归地查找一个字符串

linux - 尝试查找某些文件时 find 没有给我输出

带有目录/包的defineClass的Java ClassLoader格式?

javascript - 查找列表项并将其 ID 转换为小写,添加连字符

linux - 将 -0 与 xargs 一起使用

git - JQ - 如何定义过滤器以从输出数组中删除括号、引号和逗号