我想知道是否可以在linux中直接汇总一个文件中包含的以下行。
34 cars
13 cars
11 drivers
42 drivers
我想要的输出
47 cars
53 drivers
谢谢!
我搜索了网站,但我没有找到与我的请求相似的内容。
答案 0 :(得分:3)
您可以使用awk
:
awk '{a[$2]+=$1}END{for(i in a){print a[i], i}}' file
UPD。如果模式包含多个单词,请尝试
awk '{n=$1;$1="";a[$0]+=n}END{for(i in a){print a[i], i}}' file
然而,仍存在非标准化空白区域的问题,例如: a space
和a space
是相同的模式。