IP{110.167.95.97} - - [17/Jul/2019:07:05:56 +0800] "请求方法{GET} 请求页面{/admin3.asp} HTTP/1.1" 状态码{301} 284 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 浏览器名称{Firefox/7.0.1"}帮我分割数据 要求 IP单独存放到一个文件 请求方法单独存放到一个文件 请求页面单独存放到一个文件 状态码存放到一个文件 用户浏览器名称存放到一个文件帮我输出 共有多少个IP 不同的IP有多少个
帮我输出GET请求有多少次 POST请求方法有多少次
帮我输出非200的状态码有哪些? 共有多少个
帮我统计用户使用哪个浏览器的次数最多~

解决方案 »

  1.   

    用awk处理呗
    awk '{print $1}' log打印log文件中以 空格 为分隔符的第1个字段,自己去套用,还可以加-F选择   awk -F ":" '{print $2}'   答应以 冒号 为分隔符的第2个字段
    至于统计,可以用awk,也可以用grep、uniq、sort之类的。uniq去重,uniq -c 去重,并统计重复的行数,数字会写在后面;sort排序
    比如IP输出到ip.txt      cat ip.txt | wc -l   统计总共多少ip   ;  cat ip.txt | sort | uniq -d  有哪些不同的ip    ;   cat ip.txt | sort | uniq -c  统计每个IP有多少自己百度下怎么用吧
      

  2.   

    比如取IP 
    awk -F "}" '{print $1}' log | awk -F "{" '{print $2}'  > ip.txt     先取以}为分隔符的第一部分,即   IP{110.167.95.97   ,然后再取以{为分隔符的第2部分,就是IP了110.167.95.97