25 | shell分析日志文件

目录

1 查看有多少个IP访问

awk '{print $1}' log_file|sort|uniq|wc -l

2 查看某一个页面被访问的次数

grep "/index.php" log_file | wc -l

3 查看每一个IP访问了多少个页面

awk '{++S[$1]} END {for (a in S) print a,S[a]}' log_file > log.txt
sort -n -t ' ' -k 2 log.txt  # 配合sort进一步排序

4 将每个IP访问的页面数进行从小到大排序

awk '{++S[$1]} END {for (a in S) print S[a],a}' log_file | sort -n

5 查看某一个IP访问了哪些页面

grep ^111.111.111.111 log_file| awk '{print $1,$7}'

6 去掉搜索引擎统计的页面

awk '{print $12,$1}' log_file | grep ^\"Mozilla | awk '{print $2}' |sort | uniq | wc -l

7 查看2015年8月16日14时这一个小时内有多少IP访问

awk '{print $4,$1}' log_file | grep 16/Aug/2015:14 | awk '{print $2}'| sort | uniq | wc -l

8 查看访问前十个ip地址

awk '{print $1}' |sort|uniq -c|sort -nr |head -10 access_log

uniq -c 相当于分组统计并把统计数放在最前面

cat access.log|awk '{print $1}'|sort|uniq -c|sort -nr|head -10

cat access.log|awk '{
   counts[$(11)]+=1}; END {
   for(url in counts) print counts[url], url}

9 访问次数最多的10个文件或页面

cat log_file|awk '{print $11}'|sort|uniq -c|sort -nr | head -10

10 访问量最大的前20个ip

cat log_file|awk '{print $11}'|sort|uniq -c|sort -nr|head -20

awk '{print $1}' log_file |sort -n -r |uniq -c | sort -n -r | head -20

11 通过子域名访问次数,依据referer来计算,稍有不准

cat access.log | awk '{print $11}' | sed -e ' s/http:\/\///' -e ' s/\/.*//' | sort | uniq -c <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值