首页 > 代码库 > nginx日志切割shell脚本
nginx日志切割shell脚本
#!/bin/bash #function:cut nginx log files shell #cp /usr/local/nginx/logs/access.log /usr/local/nginx/logs/access.log.bak log_cut_path="/var/log/nginx" log_files_path="/usr/local/nginx/logs/" log_files_dir=${log_cut_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m") log_files_name=(access) nginx_pid=`ps aux | grep ‘nginx: master‘ | grep -v ‘grep nginx‘ | awk ‘{print $2}‘` save_days=90 mkdir -p $log_cut_path log_files_num=${#log_files_name[@]} #cut nginx log files for((i=0;i<$log_files_num;i++));do mv ${log_files_path}${log_files_name[i]}.log ${log_files_dir}/${log_files_name[i]}_$(date -d "yesterday" +"%Y%m%d").log done kill -USR1 $nginx_pid find $log_files_path -mtime +$save_days -exec rm -rf {} \;
现在的nginx日志存放目录 log_files_path=
"/usr/local/nginx/logs/"
切割后的日志存放目录 log_cut_path=
"/var/log/nginx"
第三行第一次运行一下
加入crontab
0 0 * * * sh /root/nginxlogcut.sh
参考 http://sndapk.blog.51cto.com/5385144/1297120 有改动
本文出自 “一颗石头 BBOTTE的博客” 博客,请务必保留此出处http://bbotte.blog.51cto.com/6205307/1411870
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。