日志格式如下
2021-09-01 00:02:55 0.012 - 105 10.33.252.4 030.16.121.132:30086 200 GET /pad-xxx/customer/login
2021-09-01 00:02:55 0.0030 - 250 10.33.252.4 30.16.121.132:30086 200 GET /pad-xxx/customer/writeLog/getsignNature
2021-09-01 00:03:02 0.0 - 13945 10.33.252.4 30.16.121.132:30086 200 GET /pad-xxx/umapecif-initial-loading.js
2021-09-01 00:03:02 0.0010 - 3132 10.33.252.8 30.16.121.132:30086 200 GET /pad-xxx/welcome-initial-loading.html
结果如下
awk 'BEGIN{printf "%-60s%5s%10s\n",".do","code","count"}{if($10!~/js$/&&$10!~/html$/&&$10!~/png$/&&$10!~/css$/&&$10!~/gif$/&&$10~/^\/pad-xxx/){acc[$10,$8]++}}END{for(i in acc){split(i,idx,SUBSEP);printf "%-60s%5s%10s\n",idx[1],idx[2],acc[i]}}' *.acc | sort
.do code count
/pad-xxx/customer/ai/signature 200 107
/pad-xxx/customer/clickLike/queryCustomTagClickLike 500 92
/pad-xxx/customer/login 200 4034
/pad-xxx/customer/pcis/getArrivedShopTag 200 2802
/pad-xxx/customer/pcis/getArrivedShopTag 500 2
/pad-xxx/customer/pcis/getcustomerType 500 3
awk中判断某个字段是否等于某个变量
awk -v date_str=`date +%F ` ‘{if($1==date_str) print’ *.acc