awk列求和

用awk命令计算文件中某一列的总和: awk ‘BEGIN{sum=0}{sum+=$1}END{print sum}’ data.txt

例:有a、b、c三行三列,计算出第二列和第三列的总和,并在第四行输出

1
2
3
4
[root@test ~]# cat data.txt
a 1 10
b 26 379
c 2 1605

计算:

1
2
3
4
5
[root@test ~]# awk '{printf "%10s%5s%8s\n",$1,$2,$3;x+=$2;y+=$3}END{printf "%10s%5s%8s\n","Total:",x,y}' data.txt
a 1 10
b 26 379
c 2 1605
Total: 29 1994