【crontab】日志清理的定时任务,只保留7天日志

添加一个定时任务,定时执行日志清理脚本:

#  (crontab -l 2>/dev/null || true; echo "59 11 * * * /usr/local/bin/clear_log.sh") | crontab -

# chmod 750  /usr/local/bin/clear_log.sh


日志清理脚本内容:

# cat /usr/local/bin/clear_log.sh

##############################################################################

#!/bin/bash

if [ -d /var/log/nginx ]; then

    cp   /var/log/nginx/error.log  /var/log/nginx/error-$(date -d "yesterday" +"%Y%m%d").log

    cat /dev/null > /var/log/nginx/error.log

    cp  /var/log/nginx/access.log  /var/log/nginx/access-$(date -d "yesterday" +"%Y%m%d").log

    cat /dev/null > /var/log/nginx/access.log

    find /var/log/nginx  -mtime +7 -type f -name  "*.log"  -exec rm -rf {} \; 

fi

if [ -d /var/log/console ]; then

find /var/log/console -mtime +7 -type f   -exec  rm -rf  {}  \;

fi

################################################################################

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容