我的file.txt
看起来像这样:
1 12
2 18
3 45
4 5
5 71
6 96
7 13
8 12
我可以像这样总结第二列:
awk '{ sum += $2 } END { print sum }' file.txt
272
我可以在每一行上打印该笔款项的最简洁的方法是什么?这是我所期望的:
1 12 272
2 18 272
3 45 272
4 5 272
5 71 272
6 96 272
7 13 272
8 12 272
最佳答案
一种标准的awk
方式。
$ awk 'FNR==NR{sum+=$2;next}; {print $0,sum}' file.txt{,}
1 12 272
2 18 272
3 45 272
4 5 272
5 71 272
6 96 272
7 13 272
8 12 272
关于bash - awk总和一列并在输入的每一行上打印总和,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10510917/