思路:用awk提取文本文件并赋值为数组,然后用for循环求数组的总和,用bc求平均值以保留3位小数。

#!/bin/bash
arr=($(awk 'NR>1' nowcoder.txt))
length=$(head -n 1 nowcoder.txt)
sum=0
for i in "${arr[@]}"; do
	sum=$((sum+i))
done
ave=$(echo "scale=3; $sum / $length" | bc)
echo "$ave"