我有一些包含.csv.gz
文件的子目录。使用awk
,我可以根据第1列和第2列中的值筛选文件,并将结果转储到单个.csv.gz
文件中。
pigz -rdc /path/to/dir/ | awk -F, '{ if(($1>100) && ($2>100)) {print} }' | pigz > output.csv.gz
得益于pigz
,bash管道的前端和端部可以从并行处理中获益。我想知道如何使用GNU并行工具并行执行awk
作业。
doit() {
pigz -dc "$1" | awk -F, '{ if(($1>100) && ($2>100)) {print} }'
}
export -f doit
find /path/to/dir -name '*.gz' | parallel doit | pigz > output.csv.gz