按天分割日志
#!/bin/bash
#时间
yesterday_date=`date -d "yesterday" +"%Y%m%d"`
#日志文件存放目录
logs_path="/usr/local/nginx/logs"
# pid文件
pid_path="/usr/local/nginx/logs/nginx.pid"
#重命名日志文件
mv ${logs_path}access.log ${logs_path}access_${yesterday_date}.log
#向nginx主进程发送信号以重新打开日志
kill -USR1 `cat ${pid_path}`
保存为sh,添加每天零点定时任务即可
统计日志访问IP
awk '{print $1}' access.log | sort | uniq -c | sort -n -r
命令解释:awk
打印IP列sort
对IP 列排序uniq -c
去重并统计出重复的数量sort -n -r
根据统计的重复数倒叙排序