Apache服务器使用bash记录最高流量

时间:2013-03-27 05:04:05

标签: apache bash

我有一个Apache服务器日志,我正在尝试确定哪个IP地址产生的流量最多。我已经设法将其格式化,因此只有IP和它们的流量以字节为单位:

xxx.xxx.xxx.xxx 915925
yyy.yyy.yyy.yyy 1193
zzz.zzz.zzz.zzz 2356

所以现在我正在寻找一种方法来组合和添加相同IP的字节,然后找到最高值。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如果文件中有ip和traffic字节,请使用以下命令完成工作。

  1. <强> cat file | perl -ane '$h{ $F[0] } += $F[1]; END { for ( sort keys %h ) { printf qq[%s %d\n], $_, $h{ $_ } } }' | sort -k2 -n -r

  2. <强> awk '{A[$1]+=$2;next}END{for(i in A){print i,A[i]}}' file | sort -k2 -n -r