admin 发表于 2022-9-2 17:09:45

日志定时清理脚本

#!/bin/bash

# 此脚本用于监控程序运行日志大小
# 日志文件大小超过指定值将会被清空

# 定义字典
declare -A loginfo
st_size=5120

loginfo=(["/usr/local/tms/hukanfa"]="hukanfa.log" \
         ["/usr/local/tms/tms-agent"]="tms-agent-info.log"\
         ["/usr/local/tms/tms-iot-core"]="tms-iot-core-info.log"         
)

for i in ${!loginfo[*]}
do
cd $i 2> /dev/null
if [ "$?" -ne 0 ];then
        echo "$atime 警告:目录 $i 不存在,将跳过该目录继续执行!"
        break
fi
log_size=`du -am ${loginfo[$i]} | awk '{print $1}'`
atime=`date +"%Y-%m-%d %H:%M:%S"`
if [ $log_size -ge $st_size ];then
    echo "$atime 日志文件 ${loginfo[$i]} 目前大小为 $log_size 已超过 $st_size M,将清理"
        > ${loginfo[$i]}
        echo "$atime 已完成清理"
else
    echo "$atime 无可清理项"
    exit
fi
done
页: [1]
查看完整版本: 日志定时清理脚本