linux文件某列求和
linux文件某列求和
linux文件某列求和
linux文件按照某两个字段为条件
对某个字段求和
第一种方法:
www.2cto.com
01
#!/bin/bash
02
03
04
filename=sp.user
05
cat $filename|awk '{print $1" "$2" "$3}' >log.txt
06
cat log.txt|awk '{print $1" "$2}'|sort |uniq >t.txt
07
while read line
08
do
09
echo -n -e "$line\t"
10
grep "$line" log.txt|awk 'BEGIN{total=0}{total+=$3}END{print total}'
11
done <t.txt
www.2cto.com
第二种方法:
1
#!/bin/bash
2
3
4
filename=crm.sp.user
5
awk '{a[$1" "$2]+=$3}END{for(i in a)print i,a[i]}' $filename >sp.user.sumfee
评论暂时关闭