求助,想实现如下统计功能。
有个log,内容类似如下:
xxxxxxxx,resp,1001,xxxxxx,56:201,xxxx
xxxxxxxx,resp,1001,xxxxxx,56:202,xxxx
xxxxxxxx,resp,1001,xxxxxx,56:203,xxxx
......
......
xxxxxxxx,resp,1002,xxxxxx,56:201,xxxx
xxxxxxxx,resp,1002,xxxxxx,56:203,xxxx
xxxxxxxx,resp,1002,xxxxxx,56:206,xxxx
......
......
xxxxxxxx,resp,1007,xxxxxx,56:-13,xxxx
xxxxxxxx,resp,1008,xxxxxx,56:9001,xxxx
xxxxxxxx,resp,1009,xxxxxx,56:209,xxxx
......
......
xxxx,resp,[返回码1],xxxxxxx,56:[返回码2],xxxx
返回码1是全数字,返回码2会包含“-”号
返回码1和返回码2不固定,需要从日志中取,有多少种取多少种
想得到的结果是:
【1001】共计 条
【1001,201】共计 条
【1001,202】共计 条
......
......
【2001】共计 条
【2001,201】共计 条
【2001,-13】共计 条
......
......
可能几千个类似日志,共计百万条数据,所以还要考虑效率!
一向对awk数组比较恐惧,无解中,求高人相助。
感激不尽!
实际的一条log,log中还有大量其他不是这样格式的行
2009/05/31 21:34:59,<H>InMsg,resp,1008,0,9990384585601,346156950,2343590548,0,999,0,0014,200,A Portal,212.230.144.69;<B>QUsrPfRp,56:0,14:12923332326,16:00140055675190,22:1,15:2,121:20615;
[ 本帖最后由 zjdick 于 2009-6-1 18:08 编辑 ] |