2010-04-21 107 views
2

我有一個文件包含在單個列中的數據..我必須找到每4行的總和並打印總和 也就是說,我必須計算從第4行的第0-3行總和的值的總和7,線8至11等的總和.....每N行的總和; awk

回答

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 
+0

第一個答案讓我..Thanks很多 – 2010-04-21 07:05:52

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