2015-10-14 36 views

回答

3

您可以使用AWK:

awk '{sums[$1]+=$2} END{for (i in sums) print i, sums[i]}' file 
a 10 
b 20 

上述方案可能会改变列的顺序按照内部散列的关联数组。要保持原来的订单使用:

awk '!($1 in sums){ord[++n]=$1} {sums[$1]+=$2} 
    END{for (i=1; i<=n; i++) print ord[i], sums[ord[i]]}' file 
a 10 
b 20 
+1

工作完美。谢谢 – SSh

相关问题