代码如下:
#!/bin/bash
log_files_path="/home/wwwlogs/"
log_files_dir=${log_files_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m")
log_files_name=(access_bbs access_phpmyadmin access_so access_ucenter access_www nginx_error)
nginx_sbin="/usr/local/nginx/sbin/nginx"
save_days=7
############################################
#Please do not modify the following script #
############################################
mkdir -p $log_files_dir
log_files_num=${#log_files_name[@]}
for((i=0;i<$log_files_num;i++));do
mv ${log_files_path}${log_files_name}.log ${log_files_dir}/${log_files_name}_$(date -d "yesterday" +"%Y%m%d").log
done
find $log_files_path -mtime +$save_days -exec rm -rf {} \;
$nginx_sbin -s reload
自动切割没问题,但是定期删除7天前的日志有点小异常:就是突然某一天就把之前的备份全删除了,甚至包括前天的,就剩下昨天的。
这个脚本每天凌晨4点运行,我现在也没总结出来发生这一灵异事件的规律,隔几天就来这么一下子。这样子乱删就怕哪天用到日志就没有了。。。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。