我有一个字符串列表(stdin),如下所示:
1 pineapples
28 apples
16 oranges
8 apples
2 apples
2 oranges
56 pineapples
有没有一种 native 方式(例如
sort
和uniq -c
),我可以通过这种方式合并和汇总它们,如下所示:38 apples
18 oranges
57 pineapples
像
sort |uniq -c
一样,但不仅限于出现次数? 最佳答案
试试这个:
awk '{a[$2] += $1} END{for (i in a) print a[i], i}' < in.txt
输出
38 apples
57 pineapples
18 oranges