centos7当数据盘到达百分之80%后自动清理日志的shell脚本

思路简单 首先编写一个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 &
#获取脚本执行和未执行情况如何 

你可能感兴趣的:(shell,centos,linux)