行的总值在特定列中具有相同的值

时间:2016-02-17 19:23:36

标签: linux bash awk

我想总计第2列中具有相同值的第3列和第4列中的值。

我的文件如下所示:

18 1600012 0 8
18 1600014 0 3
18 1600014 0 4
18 1600014 0 5
18 1600015 0 5
18 1600015 4 4

,所需的输出将是

18 1600012 0 8
18 1600014 0 12
18 1600015 4 9

1 个答案:

答案 0 :(得分:1)

您可以像这样使用awk:

awk '{k=$1 OFS $2; c3[k] += $3; c4[k] += $4} END{for (i in c3) print i, c3[i], c4[i]}' file

<强>输出:

18 1600014 0 12
18 1600015 4 9
18 1600012 0 8