关于NR和FNR的介绍见:
http://lxw1234.com/archives/2016/03/621.htm
addr.out:
A
B
C
cs.out:
A;1
B;3
A;2
B;4
C;2
B;5
实现group by功能:
awk -F";" 'NR==FNR{a[$1]=0};NR!=FNR{if($1 in a){a[$1]+=$2}}; END{for(i in a){print i,a[i]}}' addr.out cs.out
结果为:
A 3
B 12
C 2
awk分组求和:
awk -F";" '{x[$3]+=$4} END{for (i in x) print i,x[i]}' cs.out > res.out
参考: