我有一个包含大量行的文件,如下所示:
3 world
3 moon
3 night
2 world
2 video
2 pluto
1 world
1 pluto
1 moon
1 mars
我想取每个包含相同单词的行,并在添加前面的数字时合并它们,使它看起来像这样:
6 world
4 moon
3 pluto
3 night
2 video
1 mars
我一直在尝试与sed组合,但我似乎无法做到正确。我的下一个想法是对它们进行排序,然后检查下面的行是否是同一个单词,然后添加它们,但我无法弄清楚如何让它按字而不是数字排序。
答案 0 :(得分:3)
总结和排序:
awk -F" " '{c[$2]+=$1} END {for (i in c){print c[i], i}}' | sort -n -r