使用 GNU parallel 提升 awk 性能

Boost awk performance using GNU parallel

我有一些包含 .csv.gz 文件的子目录。使用 awk,我可以设法根据第 1 列和第 2 列中的值过滤文件,并将结果转储到单个 .csv.gz 文件中。

 pigz -rdc /path/to/dir/ | awk -F, '{ if((>100) && (>100)) {print} }' | pigz > output.csv.gz

感谢 pigz,bash 管道的前端和末端受益于并行处理。我想知道如何使用 GNU parallel 工具并行执行 awk 作业。

doit() {
  pigz -dc "" | awk -F, '{ if((>100) && (>100)) {print} }'
}
export -f doit

find /path/to/dir -name '*.gz' | parallel doit | pigz > output.csv.gz