又学习了 记录下
内容如下:
3 5 6 7
2 3 1 0
4 5 6 9
2 3 4 4
2 2 1 0
4 5 0 9
要求:把2列和3列的和作为新的第5列,第5列的平均值为avg5,求第5列中大于avg5的行数。
[root@localhost test]# cat c
3 5 6 7
2 3 1 0
4 5 6 9
2 3 4 4
2 2 1 0
4 5 0 9
[root@localhost test]# awk '{a[NR]=$2+$3;sum+=a[NR]} END {avg=sum/NR;for(i in a){if (a[i]>avg) {print a[i],avg,i}}}' c
7 6.83333 4
11 6.83333 1
11 6.83333 3
转载于:https://blog.51cto.com/liveforlinux/747457