【发布时间】:2018-05-04 13:57:50
【问题描述】:
需要您的帮助来解决以下查询。 如果 column1 中的值重复,我想总结 column3、column5、column6、column7、column9、column10 的值。 还需要在输出文件中将重复的行作为单行,还需要将column1的值放在输出文件的第8列中
输入文件
a|b|c|d|e|f|g|h|i|j
IN27201800024099|a|2.01|ad|5|56|6|rr|1|5
IN27201800023963|b|3|4|rt|67|6|61|ty|6
IN27201800024099|a|4|87|ad|5|6|1|rr|7.45
IN27201800024099|a|5|98|ad|5|6|1|rr|8
IN27201800023963|b|7|7|rt|5|5|1|ty|56
IN27201800024098|f|80|67|ty|6|6|1|4rght|765
输出文件
a|b|c|d|e|f|g|h|i|j|k
IN27201800024099|a|11.01|190|ad|66|18|3|rr|20.45|IN27201800024099
IN27201800023963|b|10|11|rt|72|11|62|ty|62|IN27201800023963
IN27201800024098|f|80|67|ty|6|6|1|4rght|765|IN27201800024098
尝试了下面的代码,但它不起作用,也不知道如何完成代码以获得正确的输出
awk 'BEGIN {FS=OFS="|"} FNR==1 {a[$1]+= (f3[key]+=$3;f5[key]+=$5;f6[key]+=$6;f7[key]+=$7;f9[key]+=$9;f10[key]+=$10;)} input.txt > output.txt
【问题讨论】:
-
为什么不将您的脚本分散到带有空格的几行中,以使其清晰易读,而不是将其全部塞到一行中,而这只是一堆字符?