linux實現shell腳本監控磁盤內存達到閾值時清理catalina.out日志


想在服務器上寫一個shell腳本,在磁盤使用率達到80%時,自動清理掉一些沒有用的日志文件,根據這個想法,在生產環境上寫了一個以下腳本,按照該流程,可實現在linux環境做一個定時任務來執行shell腳本,監控磁盤內存,當到達80%時,將自動清空catalina.out的日志文件。

1.進入到tomcat的bin目錄執行以下操作:

#touch clearlog.sh

#vim clearlog.sh

  1 #!/bin/bash
  2 maxUsed=$(df -h|grep /dev/sda1|awk -F'[ %]+' '{print $5}')
  3 val=80
  4 if [ "$maxUsed" -gt "$val" ];then
  5 cat /dev/null
  6 >/app/web/tomcat-8089/logs/catalina.out
  7 echo "clear success  catalina.out end"
  8 fi

2.給腳本加上可執行權限:chmod 777 clearlog.sh

3.執行crontab –e

clipboard

4.添加定時任務內容:

* * * * * /bin/bash /app/web/tomcat-8089/bin/clearlog.sh

image

完成以上即可。

5.最后執行#tail -500f /var/spool/mail/root可查看定時任務執行情況。

按照舉一反三的學習態度,其他時間的定時任務設置,可參考以下內容:

  1 實例1:每1分鍾執行一次cmd
  2 * * * * * cmd
  3 
  4 實例2:每小時的第3和第15分鍾執行
  5 3,15 * * * * cmd
  6 
  7 實例3:在上午8點到11點的第3和第15分鍾執行
  8 3,15 8-11 * * * cmd
  9 
 10 實例4:每隔兩天的上午8點到11點的第3和第15分鍾執行
 11 3,15 8-11 */2  *  * cmd
 12 
 13 實例5:每周一上午8點到11點的第3和第15分鍾執行
 14 3,15 8-11 * * 1 cmd
 15 
 16 實例6:每晚的21:30執行
 17 30 21 * * * cmd
 18 
 19 實例7:每月1、10、22日的4 : 45執行
 20 45 4 1,10,22 * * cmd
 21 
 22 實例8:每周六、周日的1 : 10執行
 23 10 1 * * 6,0 cmd
 24 
 25 實例9:每天18 : 00至23 : 00之間每隔30分鍾執行
 26 */30 18-23 * * * cmd
 27 
 28 實例10:每星期六的晚上11 : 00 pm執行
 29 0 23 * * 6 cmd
 30 
 31 實例11:每一小時執行
 32 0 */1 * * * cmd
 33 
 34 實例12:晚上11點到早上7點之間,每隔一小時執行
 35 0 23-7 * * * cmd

參考:https://www.cnblogs.com/qfdxxdr/p/6380783.html



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM