Bash 每16秒计算文件中包含的平均值

Bash 每16秒计算文件中包含的平均值,bash,shell,Bash,Shell,我有一个大文件“values.txt”,里面有很多值。这些价值观​​可在文件valeur.txt中找到,如下所示: File: "values.txt" ************************************************** ***************************************** 2 14 18 20 23 . . . 24 ********************************************************

我有一个大文件“values.txt”,里面有很多值。这些价值观​​可在文件valeur.txt中找到,如下所示:

File:  "values.txt"
************************************************** *****************************************
2
14
18
20
23
.
.
.
24
******************************************************************************************
我想写一个脚本来计算平均值​​每16秒读取一次values.txt文件

IE:每16秒后,我将计算数值的平均值​​我在values.txt文件中读取的

对于exmpl:

要读取文件“value.txt”,我们需要(16*4=64)秒。 因此,当脚本的渗出完成时,它必须显示4个值。因为每16秒它就会计算出一个平均值

我试着做一些事情,但时间的概念(16秒)我仍然无法管理它


让“i=0”
设“cum=0”
读var时
做
如果[timer]#我如何控制16秒的时间?
然后
设“i=i+1”
设“cum=cum+var”
否则#16秒已经过去了,所以我计算平均值
让“avrg_var=cum/i”
echo“$avrg_var”>>new_file.txt
fi
done

提前感谢您的回答和建议

试试这个:

while :
do
    let "i=0"
    let "cum=0"
    while read var
    do
        let "i = i +1"
        let "cum = cum + var"
    done < /tmp/values.txt 

    let "avrg_var= cum /i"

    echo "$avrg_var">> new_file.txt

    sleep 16
done
while:
做
设“i=0”
设“cum=0”
读var时
做
设“i=i+1”
设“cum=cum+var”
完成>new_file.txt
睡眠16
完成

这在计时器上不起作用,只是在两次运行之间休眠16秒。

编写一个脚本,将值平均一次,然后您可以使用命令在基于*nix的系统上运行脚本。默认值为2秒,但您可以随时将其更改为所需的值,并且它将在终端中重复运行,直到取消为止

while :
do
    let "i=0"
    let "cum=0"
    while read var
    do
        let "i = i +1"
        let "cum = cum + var"
    done < /tmp/values.txt 

    let "avrg_var= cum /i"

    echo "$avrg_var">> new_file.txt

    sleep 16
done