文件test:
文本内容如下:
a 2
b 3
c 6
a 8
d 9
处理方法,如果第一列相同,第二列值相加(比如a 10),处理完毕后,打印第二列的值大于8的数据。
awk:
awk '{a[$1]+=$2;}END{for(i in a){if(a[i]>8){print i" "a[i];}}}' test
python:
#!/usr/bin/env python f = file("test",'r') m = {} for x in f.readlines(): key,value = x.split() if m.has_key(key): m[key] = int(m[key])+int(value) else: m[key] = value if int(m[key]) < 8: del m[key] print m for k,v in m.items(): print k,v
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/191716.html