我有一个格式如下的文件:
method1|duration=300s
method2|duration=300s
method1|duration=500s
method1|duration=300s
method1|duration=700s
method3|duration=300s
...
如何使用Linux Shell获得method1的平均持续时间?谢谢。
用这个:
awk -F'[=s]' '/method1/{t+=$2;c++}END{printf "%ss\n",t/c}' file
-F[=s]
将字段定界符设置为=
或s
使其很容易提取它们之间的数值。t+=$2
会将数值加上总数t
。c++
将计算包含术语的行method1
。在输入的最后一行被处理之后END
,我们打印总数t
除以c
包含的行数method1
。
注:变量的初始化c
和t
没有必要的,因为AWK与它们初始化0
中首次使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句