根据 bash 中的行单词对值求和



我有一个脚本,它输出一个数字,后跟一个空格,然后是一个字母,例如:

2685 R
2435 M
984 D
924 A
353 R
291 A
593 D
577 A
476 R
769 M
629 R
179 D

有没有一种简单的方法可以根据数字后面的字母/单词对数字求和?我希望这是输出:

1792 A
1756 D
3204 M
4143 R

我已经尝试了sortawksed组合,但找不到一个很好的求和解决方案。

谢谢。

以下awk可能会在这里为您提供帮助。

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

如果您想按照第二个字段对其进行排序,请将| sort -k2也附加到上面的代码中。

最新更新