如何并行搜索多个文件以查找模式,并在第一次搜索后停止

时间:2017-07-17 18:49:20

标签: grep find xargs head

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

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

我该怎么办?

1 个答案:

答案 0 :(得分:2)

你可以用 GNU Parallel 这样做:

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

或者,反过来说:

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