![如何找到 txt 文件中某一列数据的平均值?](https://linux22.com/image/1194104/%E5%A6%82%E4%BD%95%E6%89%BE%E5%88%B0%20txt%20%E6%96%87%E4%BB%B6%E4%B8%AD%E6%9F%90%E4%B8%80%E5%88%97%E6%95%B0%E6%8D%AE%E7%9A%84%E5%B9%B3%E5%9D%87%E5%80%BC%EF%BC%9F.png)
我需要编写一个脚本,该脚本可以找到列中数字的平均值,然后在运行时打印出该值。我对 Linux 命令还很陌生,我已经尽力了,但我甚至不知道如何开始。我想我需要以某种方式制作一个计数器并使用 awk 命令,但我不知道如何让它读取列中的数据或然后除以条目数。这对大多数人来说可能听起来很简单,但我 2 天前才开始使用 Linux,所以我很迷茫,非常感谢任何帮助。
答案1
像这样:
$ cat file
1
2
3
4
5
6
$ awk '
{count+=$1}
END{print count/NR}
' file
输出
3.5
解释
操作员 | 意义 |
---|---|
{} |
awk 操作/表达式/代码 |
count |
随机变量 |
+=$1 |
+ 列1增量的值 |
END 或者true condition |
代码运行...在END 或在true condition 。awk 都是关于true{expr} 像1{print} |
count/NR |
简单算术除法 |
NR |
当前行/最后一行的行号:记录N 数R |