想在服務器上寫一個shell腳本,在磁盤使用率達到80%時,自動清理掉一些沒有用的日誌文件,根據這個想法,在生產環境上寫了一個如下腳本,按照該流程,可實如今linux環境作一個定時任務來執行shell腳本,監控磁盤內存,當到達80%時,將自動清空catalina.out的日誌文件。html
1.進入到tomcat的bin目錄執行如下操做:linux
#touch clearlog.shweb
#vim clearlog.shshell
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.shvim
3.執行crontab –etomcat
4.添加定時任務內容:bash
* * * * * /bin/bash /app/web/tomcat-8089/bin/clearlog.sh服務器
完成以上便可。app
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:每個月一、十、22日的4 : 45執行 20 45 4 1,10,22 * * cmd 21 22 實例8:每週6、週日的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