使用awk和parallel同时处理多个文件



我有一百多个由部分组成的.csv文件,其中包含由'|'分隔的数据。我需要使用awk和parallel在每个零件文件的第二列添加前缀。

我一次只做一个文件,但要花几个小时。所以想和平行线走。

input1.csv

10 | 20

10 | 30

10|40

input2.csv

20 | 30

20|40

第1行| 10

预期输出

input1.csv

10 |P20

10|P30

10 |P40

input2.csv

20|P30

20 |P40

第1行|P10

我正在使用这个,并且当我一次处理一个文件时工作,但我需要更快的东西,可以使用并行处理多个文件

awk‘BEGIN{FS=OFS="|"}{$2="p"$2}1’input1.csv>在.tmp&mv输入.tmp输入1.csv

awk‘BEGIN{FS=OFS="|"}{$2="p"$2}1’input2.csv>在.tmp&mv输入.tmp输入2.csv

end最终将所有输入*.csv文件合并到输入中

这对我来说是

parallel "awk -F'|' '{print $1"|""PO"$2}' {} > {}.tmp; mv {}.tmp {}" ::: input*.csv

相关内容

  • 没有找到相关文章

最新更新