求助,想实现如下统计功能。 有个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,InMsg,resp,1008,0,9990384585601,346156950,2343590548,0,999,0,0014,200,A Portal,212.230.144.69;QUsrPfRp,56:0,14:12923332326,16:00140055675190,22:1,15:2,121:20615;
[ 本帖最后由 zjdick 于 2009-6-1 18:08 编辑 ]
|