shell脚本 分析日志求一个字段的平均数

在系统运维工作中时常需要针对数据做一个简单的统计,比如:某日志的耗时字段求评价耗时。

例1:求第二列字段的平均数

cat log | awk '{sum+=$2} END {print "Average = ", sum/NR}'

$2表示要统计的字段在第2列。

例2:求所有php-fpm进程占用内存的总数

ps aux | grep php-fpm | grep -v master | grep -v grep | awk '{sum+=$6} END {print sum}'
578104

这个578104就是所有php-fpm进程占用内存的总数,单位是KB。

如果要取平均数就这样写:

ps aux | grep php-fpm | grep -v master | grep -v grep | awk '{sum+=$6} END {print sum/NR}'
14523.6

平均每个php-fpm进程占用大约14MB内存。

扫码关注我的公众号