Centos 自动删除日志文件的Shell代码

#!/bin/bash
#
#判断文件夹内文件的大小,如果大于一定的数值,那么删除
#
echo '判断文件夹内文件的大小,如果大于一定的数值,并且文件名称包含数字(年月日)的删除,那么删除'
path=/usr/local/vevigame/mqantserver/bin/logs
max=1000000


while [ true ]
do 
    #查找文件
    for file in `ls -l $path|awk {'print $9'} |grep [0-9]` #此文件夹下包含数字(年月日)的往日记录文件,没有数字的是当前log
        do
            echo $path/$file
            if [ -f $path/$file ];then
                size=`du -sk $path/$file |awk '{print $1}'`
                echo '发现文件:'
                echo $size
                if [ $size -gt $max ];then
                    rm -f $path/$file
                    echo $file
                fi
            fi
    done
    sleep 1000
done

exit 0

windows下写Shell文件有可能格式出错,解决方法

linux后台执行的方法:

nohup sh ./xxx.sh &

  

原文地址:https://www.cnblogs.com/veviDP/p/9561125.html