指引网

当前位置: 主页 > 操作系统 > CentOS >

centos6中shell计算web日志中平均连接时间

来源:网络 作者:佚名 点击: 时间:2017-06-14 23:22
[摘要]  下面我们一起来看一个centos6中shell计算web日志中平均连接时间了,看到了网友有这个要求,小编整理了一些代码供各位参考。

今天在网上看到一个求web连接平均时间的shell命令,在自己的机器上试了下,发现不能使用,居然出现awk: fatal: division by zero attempted这样的错误,毛了就自己改了下shell命令.
原shell脚本例子:

cat access.log|grep "connect cbp" |awk 'BEGIN{sum=0;count=0;}{sum+=$10;count++;}END{printf("sum=%d,count=%d,avg=%f\n",sum,count, sum/count)}'


修改后的shell:

cat access.log |awk '{sum+=$10;count+=1} END{print "SUM:"sum"\nAVG:"sum/count"\nCOUNT:"count}'


执行结果:

SUM:33403166
AVG:7951.24
COUNT:4201

当然直接改原来的也可以:

cat access.log |awk 'BEGIN{sum=0;count=0;}{sum+=$10;count++;}END{printf("sum=%d,count=%d,avg=%f\n",sum,count, sum/count)}'


执行结果:
sum=33403166,count=4201,avg=7951.241609

可以看到原shell脚本求的结果更加精确些.有需要的可以自己拿去试试.

------分隔线----------------------------