对于两列,如何对按第二列分组的第一列中的值求和?

时间:2013-02-12 06:47:02

标签: bash sed awk

我有以下平面文件,并希望确定每个用户的第一列中所有点的总和。例如:

50       user1
100      user2
10       user1
20       user3

会返回

60       user1
100      user2
20       user3

有可能做这个bash吗?

2 个答案:

答案 0 :(得分:2)

#!awk -f
{
  foo[$2] += $1
}    
END {
  for (bar in foo)
    print foo[bar], bar
}

答案 1 :(得分:1)

awk '{a[$2]+=$1}END{for(i in a )print a[i],i}' your_file