- 论坛徽章:
- 0
|
60.217.32.56 - - [22/Jul/2009:04:03:06 +0800] "GET /trade/pic_member.cgi?color=000000&id=26394957&digest=a6e5ba4c05ebe4ab5737f6eb37ba8cbe HTTP/1.0" 200 353 "http://china.toocle.com/bin/gen_check_t.cgi?1248206924671" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)"
59.51.114.14 - - [22/Jul/2009:04:03:06 +0800] "GET /bin/gen_check_t.cgi?1248206921576 HTTP/1.0" 200 58 "http://china.toocle.com/member/Trade.cgi?t=trade&f=add" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)"
日志都是上面的格式,我要提取时间和后面的流量并计算合并,写法如下:
cat $log|awk '{a[substr($4,2,17)]+=$10}END{for(i in a){print a,i}}'|head -n 5
结果却是:
19248466 22/Jul/2009:05:09
0
0 company-34c1-1.ht
0 admin/eWeb/kncead
0 detail--4695850.h
正常应该都是像每一行那样,数值加时间的,我知道是{a[substr($4,2,17)]这一部分的问题,我单独截取都是没问题的,但是放这里就不行了,肯定这样写不对,但不知正确应怎样写,还要请教各位高手讲解一下。不胜感激! |
|