思路简单 首先编写一个shell脚本,然后用crontab定时任务每天执行一遍
cat logs.sh
#!/bin/bash
disk=$(df -H | grep '/dev/vda1' | awk '{print $5}' | sed 's/%$//g')
#对df -h命令的数据盘用命令获取到剩余百分之多少
curDate=$(date "+%Y-%m-%d %H:%M:%S") #时间戳
cd /data/king/logs
pwd
echo "-----start delete log-----${curDate}"
#du -sh *
if [ $disk -gt 80 ] #判断数据盘大于80就执行以下命令否则不执行
then echo "/dev/vda1${disk}%大于80%~需清理pm2日志"
自行编写如何清理自身服务日志的条件
每个月需求不同
echo "-----end delete log-----${curDate}"
else
echo "/dev/vda1磁盘${curDate}正常无需清理日志"
fi
编写成功后~
crontabe -e
15 3 * * * /usr/bin/sh /data/king/logs/logs.sh >> /data/king/logs/dele.log &
#获取脚本执行和未执行情况如何
centos7当数据盘到达百分之80%后自动清理日志的shell脚本
于 2022-06-27 16:16:14 首次发布