linux日志定时清理脚本

本文发布时间: 2019-Mar-22
工作中经常会碰到服务日志占满服务器磁盘,如果不去清理,服务就可能无法正常工作。适当提高日志的打印级别,如info级别提高到warn可以临时缓解下,但也不长久之际,还得写个脚本定时清理下。#!/bin/bash#clearLog.shnginxDir=/usr/local/nginx/logs/*devInfo=($(df -l | awk '{print $1}')) #日志所处的磁盘perInfo=($(df -l | awk '{print int($5)}')) #磁盘使用率for i in `seq 0 ${#perInfo[@]}`;do if [[ ${devInfo[i]} = '/dev/xvda1' ]] && [[ ${perInfo[i]} -ge 80 ]]; then for file in $nginxDir; do exist=`echo $file | awk '{if(match($0,/.log/)) print "yes"}'`; if [[ -f $file ]] && [[ ${exist} = yes ]]; then echo '' > $file; echo $(date) $file "clear log ok!" >> /var/log/clear.log ; fi; done fi; done确定日志所处磁盘的使用情况,一般使用率达到80%就可以进行清理了。接着起个定时任务:crontab -e输入:0/30 * * * * /xxx/clearLog.sh每隔30分钟检测一次磁盘使用情况


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:09pm
栏目列表