码迷,mamicode.com
首页 > 其他好文 > 详细

自动清理带时间戳的log脚本

时间:2017-04-01 14:14:16      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:cleanup   logs   

   最近因为服务器上大量的带时间戳的日志存放过多,导致服务器上磁盘空间不够,因此就写了一个清理日志的脚本用于清理日志:

#!/bin/bash
#logs_clenup.sh:Used to clean up logs
#00 00 1 * * /usr/local/scripts/logs_clenup.sh
#writer jiangtao
#histor
#2017.3.31
########PATH########
app_dir=/usr/local/scripts/text_app_dir
logs_dir=/data/logs/clrnup_logs
two_month_ago=$(date -d ‘-2 month‘ +%Y-%m)
datetime=$(date +"%Y-%m-%d")
datetime_dir=$logs_dir/"$datetime"
logs_dir_path=$(find $app_dir -type d -name ‘logs‘ -print)

if [ ! -e "$datetime_dir" ];then
        mkdir -p $datetime_dir
fi
########PATH########
echo "============================ start cleanup logs `date +"%Y-%m-%d %H:%M:%S"`" | tee -a $datetime_dir/logs_clenup_${datetime}.log

for i in $logs_dir_path
do
    rm -rf $i/*$two_month_ago*
    echo "`date` $i cleanup success" | tee -a $datetime_dir/logs_clenup_${datetime}.log
done

if [ $? -eq 0 ];then
    echo "============================ end cleanup logs `date +"%Y-%m-%d %H:%M:%S"`" | tee -a $datetime_dir/logs_clenup_${datetime}.log
    else
        echo "cleanup logs fail!" | tee -a $datetime_dir/logs_clenup_${datetime}.log
fi

find $logs_dir -type f -ctime +30 -name "logs_clenup_*" -exec rm -vf {} \;


本文出自 “技术随笔” 博客,谢绝转载!

自动清理带时间戳的log脚本

标签:cleanup   logs   

原文地址:http://jim123.blog.51cto.com/4763600/1912312

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!