shell操作监听日志磁盘占用空间,实现自动清理日志

小豆丁 1年前 ⋅ 186 阅读

话不多说,直接贴脚本

#!/bin/bash
DAY_STR=`date +%Y-%m-%d %H:%M:%S`
TIME_STR=`date +%H%M%S`
percent=`df -k / | awk '{print int($5)}'` 
for each_one in $percent
do
   if [ $each_one -ge 80 ];then
      echo "NULL 磁盘存储空间占用达NULL">>/web/scripts/log.log
      df -k />>/web/scripts/log.log
      echo "开始处理日志清除">> /web/scripts/log.log
      
      find /web/logs/*/* -name "*" -type d -mtime +1 | awk '{print "rm -rf "$0}'  | bash
      
      echo "日志清除操作完成">> /web/scripts/log.log
      df -k />>/web/scripts/log.log
   fi
 
done

1、脚本解释: (1)日期获取: 关键命令date,使用

(2)磁盘目录使用检查 关键命令df,使用

(3)判断磁盘占用量 关键命令if,使用

(4)操作日志,释放磁盘空间 关键命令rm,使用

其他命令配合操作,查看:find与ls的条件用法,定时删除文件

2、配合定时任务使用

定时检查时间可以适当设置,定时任务设置查看:linux环境配置之定时任务(Centos)

3、配合邮件使用

配合邮件及时通知处理,邮件配置查看:待完善


全部评论: 0

    我有话说: