我正在处理一个日志文件,并寻找哪个进程组花费太多时间。我每分钟运行一次脚本以检查以前的时间。我到了获得如下输出的那一刻:
Group'xyz'
0
5
1
Group'test'
0
2
0
Group'stat'
0
Group'xyz'
0
0
1
0
1
0
1
2
1
我想对每个组的值求和,以查看哪个组需要花费很多时间来执行。当我使用sort -nr时,它将首先对字符串(组名)和值进行排序。如何汇总每个组的值,然后打印哪个组花费太多时间。 (例如,它应打印出组xyz执行时间最多。
答案 0 :(得分:1)
这种awk单线应可为您提供帮助:
awk 'NR==1{t=$0;next}/^Group/{print t,s;t=$0;s=0}{s+=$1}END{print t,s}' file