每N行的总和; AWK

时间:2010-04-21 06:36:58

标签: scripting awk

我有一个包含单列数据的文件。我必须找到每4行的总和并打印总和 也就是说,我必须计算从第4行到第7行的0-3行和,第8行到第11行的总和等等的总和......

2 个答案:

答案 0 :(得分:5)

awk '{s+=$1}NR%4==0{print s;s=0}' file

如果您的文件仍然存在

$ cat file
1
2
3
4
5
6
7
8
9
10

$ awk '{s+=$1}NR%4==0{print s;t+=s;s=0}END{print "total: ",t;if(s) print "left: " s}' file
10
26
total:  36
left: 19

答案 1 :(得分:1)

$ cat file
1
2
3
4
5
6
7
8
$ awk '{subtotal+=$1} NR % 4 == 0 { print "subtotal", subtotal; total+=subtotal; subtotal=0} END {print "TOTAL", total}' file
subtotal 10
subtotal 26
TOTAL 36