awk的统计篇

关于web日志访问

根据访问IP统计UV
awk '{print $1}'  access.log|sort | uniq -c |wc -l
统计访问URL统计PV
awk '{print $7}' access.log|wc -l
查询访问最频繁的URL
awk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|more
查询访问最频繁的IP
awk '{print $1}' access.log|sort | uniq -c |sort -n -k 1 -r|more
根据时间段统计查看日志
sed -n access.log '/14\/Mar\/2015:21/,/14\/Mar\/2015:22/p'|more
状态码个数统计
awk '{print $9}'  file |sort |grep 状态码 |wc -l

关于计数

wc
wc -l 
wc -w 
#统计指定文件中的字数 并将统计结果显示输出
#适用场景你们想下,比如写主从监控脚本,输出内容要有几个yes才算达标?
grep
grep -c   
#只输出匹配行的计数
#我测试了下,grep -c 对于大文件比awk+wc -l组合统计出结果的速度较快,后者因为是两个命令吗,可能要计算两次,小可爱们可以试一下
  • 用法:
[root@10-254-182-240 ~]# egrep -c "\##" 9999999.txt
30
统计字符串的个数
awk  '{s+=gsub(/字符串/,"&")}END{print s}' file

awk -v RS="@#$j" '{print gsub(/字符串/,"&")}' file

grep -o '字符串' file |wc -l

网络情况

一览?

netstat -n |grep ^tcp |awk '{print $6}' |sort |uniq  -c| sort -n -k 1 -r
  580 ESTABLISHED
     62 TIME_WAIT
     38 FIN_WAIT2
     16 FIN_WAIT1
      4 LAST_ACK
      3 CLOSE_WAIT

当前并发数?

root@front:~# netstat -n |grep ^tcp |awk '{print $6}' |sort |uniq  -c| sort -n -k 1 -r |grep ESTAB |awk '{print $1}'
599

一些解释

ESTABLISHED //正常数据传输状态/当前并发连接数

FIN_WAIT2 //另一边已同意释放

ITMED_WAIT //等待所有分组死掉

CLOSING //两边同时尝试关闭

TIME_WAIT //另一边已初始化一个释放

LAST_ACK //等待所有分组死掉

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值