Chinaunix首页 | 论坛 | 博客
  • 博客访问: 287600
  • 博文数量: 37
  • 博客积分: 1296
  • 博客等级: 中尉
  • 技术积分: 481
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-24 17:00
文章分类

全部博文(37)

文章存档

2013年(1)

2011年(21)

2010年(4)

2009年(2)

2007年(9)

我的朋友

分类: Python/Ruby

2011-03-04 13:35:44

awk '{if($4~"2011:12"){a[$9]++}} END{for (i in a) print i, "=>",a[i] }' ./access.log
计算日志里面每个返回码的出现次数,以后可以参考
echo "/home/nginx/logs/gdf.g1d.access.log" | grep -oP '(?<=/)[^./]+(?=\.)' 
吧最后一个/之前第一个 点 之间的东西扣出来。
ifconfig eth0|grep "inet add"|grep -oP '(?<=addr:)[0-9.]+' 扣ip用

谜一样的模式~~
增加一点模式的资料:

预搜索有向前和向后两种:

表达式

方向

说明

(?=xxx)

正向预搜索(向右)

正向预搜索,判断当前位置右侧是否能匹配指定表达式

(?!xxx)

正向预搜索否定,判断当前位置右侧是否不能够匹配指定表达式

(?<=xxx)

反向预搜索(向左)

反向预搜索,判断当前位置左侧是否能够匹配指定表达式

(?xxx)

反向预搜索否定,判断当前位置左侧是否不能够匹配指定表达式

正向预搜索内部的表达式,始终采用“普通模式(从左向右)”模式,反向预搜索内部的表达式,始终采用“从右向左”模式。

例如:想要匹配字符a但不匹配abc,可以为/a(?!bc)/
再如:想要所有以.pl结尾但不是a.pl的文件名,可以/.*(?

=============================================================================================

awk {
        total++;
        if($4~/error/)error++;
        else if($4~/notfound/)notFound++;
        else if($4~/ok/){
                ok++;
                iwt+=$5;
                #if($5>6500)print $0;
        }else if($4~/miss/){
                miss++;
                #if($5>6500)print $0;
                iwt+=$5;
        }
};END{ok200=ok+miss;printf("%d,%d,%d,%d,%d,%d,%f",total,error,notFound,ok200,ok,miss,iwt/ok200)}


阅读(1003) | 评论(0) | 转发(0) |
0

上一篇:ssh key 免密码登录

下一篇:PXE 安装 linux

给主人留下些什么吧!~~