Sum duplicate row values with awk

后端 未结 5 622
故里飘歌
故里飘歌 2020-12-11 05:23

I have a file with the following structure:

1486113768 3656
1486113768 6280
1486113769 530912
1486113769 5629824
1486113770 5122176
1486113772 3565920
148611         


        
5条回答
  •  北海茫月
    2020-12-11 05:50

    Use an Awk as below,

    awk '{ seen[$1] += $2 } END { for (i in seen) print i, seen[i] }' file1
    1486113768 9936
    1486113769 6160736
    1486113770 5122176
    1486113772 4096832
    1486113773 9229920
    1486113774 8568888
    

    {seen[$1]+=$2} creates a hash-map with the $1 being treated as the index value and the sum is incremented only for those unique items from $1 in the file.

提交回复
热议问题