今天看到系統空間被佔用完了,然後查看大檔案,發現Catalina.out已經>60G,網上有很多種解決辦法,不過還是想學習下編寫shell指令碼來處理,在此記錄下編寫內容,以及遇到的問題及處理方法。
直接上內容:
首先:vi、touch命令建立auto-clear-currday-catalina_out-content.sh檔案,別忘記賦予可執行許可權:chmod +x auto-clear-currday-catalina_out-content.sh;
第二步:sh內容如下:
##==========start==============##
#!/bin/sh
#auto-clear-currday-catalina_out-content
cat /dev/null > /usr/local//tomcat7.0/logs/catalina.out
##==========end===============## 比較簡單的清除代碼;
第三部:我是使用Linux的crontab 定時任務執行shell指令碼的,輸入crontab -e 編寫定時內容,如下:
10 02 * * * /home/auto-clear-currday-catalina_out-content.sh
儲存寫入;
遇到的問題:
在第三部寫入退出後提示:errors in crontab file can't install.,這裡是你shell指令碼代碼有錯誤,不過別指望會提示你更詳細的錯誤了;原因是需要分行的。。。
修改前:
##==========start==============##
#!/bin/sh
#auto-clear-currday-catalina_out-content
cat /dev/null > /usr/local//tomcat7.0/logs/catalina.out
##==========end===============##
修改後:
##==========start==============##
#!/bin/sh
#auto-clear-currday-catalina_out-content
cat /dev/null
> /usr/local//tomcat7.0/logs/catalina.out
##==========end===============##