我有以下输入,其中包含大量行
11|ABCD|19900101123123445455|555|AAA|50505050|0000009030
11|ABCD|19900101123123445455|555|AAA|50505050|0000000199
13|ABCD|201803010YYY66666666|600|ETC|20180300|0000084099
11|ABCD|19900101123123445455|555|AAA|50505050|0008995001
Run Code Online (Sandbox Code Playgroud)
我需要低于输出
11|ABCD|19900101123123445455|555|AAA|50505050|9004230
13|ABCD|201803010YYY66666666|600|ETC|20180300|84099
Run Code Online (Sandbox Code Playgroud)
我一直在尝试使用以下 awk,但对数组的了解太有限。
cat test|awk -F"|" '{ a[$1]++;b[$2]++;c[$3]++;d[$4]++;e[$5]++;f[$6]+=$6 }; END { for (i in a); print i, f[i]}'
Run Code Online (Sandbox Code Playgroud)
我需要对第 6 列的最后一列求和并打印所有前 5 列,这些列由管道分隔,最后 6 列作为第 6 列的总和。