awk -F, '{sum+=$10}END{printf "sum=%.2f",sum}' B2B_BILLDLY201206120000.REC
awk -F, 'BEGIN {sum=0;sum1=0} {if($18==1){sum+=$13}else{sum1+=$13}}END{printf "sum=%.2f,sum1=%.2f\n",sum,sum1}' B2B_BILLDLY201206120000.OK.REC
awk -F, 'BEGIN{sum=0;sum1=0}{if($7==1){sum+=$3}else{sum1+=$3}}END{printf "sum=%.2f,sum1=%.2f\n",sum,sum1}' B2B_BILLDLY201206120000.CCI.OK
awk -F, '{sum+=$5}END{printf "sum=%.2f\n",sum}' B2B_BILLDLY201206120000.DI.OK
说明:
- -F :指定分隔符,如 逗号,分号等,当分隔的字符串超过一个时,可以用‘’ 引号给标明界线
- {sum+=$10} : sum是来做加和的变量的。循环将每行的第10个域的值累加到sum上。ps:awk的下标是从1开始的。
- END{printf "sum=%.2f",sum} : 结束后将sum的结果表示出来。至于 printf 的格式可以参考c语言的格式串。
- 举例
'BEGIN {sum=0;sum1=0} {if($18==1){sum+=$13}else{sum1+=$13}}END{printf "sum=%.2f,sum1=%.2f\n",sum,sum1}'
用伪代码来表示一下
sum =0;
sum1=0;
if($18 ==1)
sum += $13
else
sum 1+= $13
end if
printf "sum=%.2f,sum1=%.2f\n",sum,sum1
本文介绍了如何使用awk命令处理特定文件格式的数据,并实现数值的条件筛选及求和操作。通过几个具体的awk命令实例,展示了如何根据不同的字段条件来进行数据的统计分析。
983

被折叠的 条评论
为什么被折叠?



