shell脚本使用之awk按列求平均值(含最大,最小值)

使用Linux命令的awk工具

delay_avg.sh脚本内容如下所示:

#!/bin/sh
RESPONSEFILE=$1
if [ $# -ne 1 ]
then
        echo "usage: ./delay_avg.sh named.response.X "
else
 {
  cat $RESPONSEFILE |awk -F '|' '{print$6}'  >>1.txt  
  cat 1.txt   |awk '{sum+=$1}END{print "Average = ", sum/NR}'
  rm -rf 1.txt
}
fi

执行结果如下:

拓展一下:求最大值或者最小值

比如求最大值: cat data|awk 'BEGIN {max = 0} {if ($1>max) max=$1 fi} END {print "Max=", max}'
求最小值(min的初始值设置一个超大数即可):awk 'BEGIN {min = 6553565} {if ($1<min) min=$1 fi} END {print "Min=", min}'

求时延
cat 1.txt |awk  '{if($1=="0") ++sum1;if($1 >="1" && $1 <"10") ++sum2}END{print "0ms""\t"sum1"\n""<10ms""\t"sum2}'

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值