#!/bin/sh
zcat www_access_log.2013-12-31.gz|awk -F"\"" ‘
BEGIN{
OFS="@" #输出字段之间的分隔符,用别的也可以
}
{
ip=""
ips=""
logtime=""
if(match($1,/([^-]+[0-9]|-) [^ ]+ ([^ ]+ )?\[[^:]+:([^ ]+)/,f))
{
ip=f[1]
logtime="2013-12-30 "f[3]
}
ip=ip=="-"?"":ip
if(length(ip)>15)
{
#ips=ip;ip=""
ip=gensub(/ *,.*/,"","g",ip)
if(length(ip)>15){ip=""}
}
if(match($2,/[A-Z]+ ([^ ?]+)/,f))
{
page=f[1]
}
else
{
page=$2
}
split($3,f," ")
code=f[1]
size=f[2]
referer=$4=="-"?"":gensub(/?.*/,"","g",$4)
ua=$6=="-"?"":$6
split($8,f,"=")
uid=f[2]
split($12,f,"=")
session=f[2]
time=$14
print logtime,ip,page,code,size,referer,ua,uid,session,time
#变量名#########含义############举例####################################
#logtime 日志时间 例如:2013-12-30 00:00:02
#ip 访问ip 例如:122.68.247.61
#page 访问的页面 例如:/index.html
#code 页面状态 例如:200,404等
#size 页面大小 例如:29872
#referer 从哪个页面过来 例如:http://www.duba.com/
#ua 浏览器信息 例如:Mozilla/4.0 (compatible; MSIE 8.0;。。。
#uid 用户的uid 例如:70894283
#session 用户session信息 例如:a54867bcb5f8462a5eff8caf9e5bbf78
#time 页面执行时间 例如:0.004
########################################################################
}‘
本文出自 “zhangdh开放空间” 博客,请务必保留此出处http://linuxblind.blog.51cto.com/7616603/1709775
原文地址:http://linuxblind.blog.51cto.com/7616603/1709775