网上大多数文章看到的都不支持按日期或是时间段过滤的,有过滤的也会有问题,当查询开始的日期不存在时,就查不出任何的数据。如下是我整理的可以支持时间段查询统计访问人数和访问量的
1、根据ip统计访问人数
格式:grep date acceess.log | awk '{print $1}' | sort | uniq | wc -l
如下:将如上的date替换成指定的格式(如下的黄色区域格式)。0[7-8]/Oct/2019 中的0代表月份的第一位(07月,08月),7-8是7号到8号的意思,整个表达式的意思是查询2019年10月7-8日的访问人数。中间的是月份的缩写。
1.1
grep "0[7-8]/Oct/2019" access.log | awk '{print $1}' | sort | uniq | wc -l
1.2查看2019年10月7日的访问人数
grep "07/Oct/2019" access.log | awk '{print $1}' | sort | uniq | wc -l
2、统计访问量
grep "0[7-8]/Oct/2019" access.log | awk '{print $7}' | wc -l