linux awk解析csv文件

#!/bin/bash
for file in *.csv
do
awk -F ',' 'begin {total=0;sum=0} {total++;if($1<=100.0 && $15!=0) sum++} END{ print FILENAME,"all",total, sum ,sum*1.0/total}' $file >> stat1.log
awk -F ',' 'begin {total=0;sum=0} {total[$15]++;if($1<=100.0) sum[$15]++} END{for(i in sum) print FILENAME,i,total[i], sum[i] ,sum[i]*1.0/total[i]}' $file >> stat1.log
done

sort -n -t ' ' -k1 -k2 stat1.log -o stat1.log

posted @ 2015-08-04 14:31  haitlee  阅读(4083)  评论(1编辑  收藏  举报