awk数组结合+=统计题
Posted 陈浩然MC
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了awk数组结合+=统计题相关的知识,希望对你有一定的参考价值。
文件如下
61.144.83.198 594 61.144.83.198 576 61.144.83.198 573 219.137.178.228 570 219.137.178.228 565 61.144.83.198 553 61.144.83.198 550 61.144.83.198 549
每一行以空格为分隔符,第一列是ip,第二列为不定数值
需求,现在想要将相同ip后的不定数值相加统计出来
awk ‘{a[$1]+=$2}END{for(i in a)print i,a[i]}‘ file
思路:
将ip作为a[]数组的下标,将$2中的内容赋值给a[$1]即a[ip],得到数组a[ip]=value
执行语句a[ip]+=value,这样同样的a[ip]中的值就会与下一行的$2相加,然后得到新的值,继续执行
直到文件末尾执行完毕
END模块
用变量i读取数组的下标,再取出数值a[i]即value值
最终得到结果
以上是关于awk数组结合+=统计题的主要内容,如果未能解决你的问题,请参考以下文章