Linux应用--日志定时清理
生活随笔
收集整理的這篇文章主要介紹了
Linux应用--日志定时清理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
上篇文章寫到了在工作中遇到的一個因為磁盤空間占滿導致的問題,因應用每天都要寫日志,所以如果不定時對部署應用的服務器進行清理的話會經常遇到這樣的問題。為避免相似的問題發生,今天總結一個Linux日志定時清理的腳本,簡單的配置一下,一勞永逸,何樂而不為。
1、Linux刪除文件命令:
find 對應目錄 -mtime +天數 -name "文件名" -exec rm -rf {} \;eg:
find /home/apache-tomcat-7.0.55-13-990*/webapps/ProxyServer2.0/WEB-INF/logs/ -mtime +10 -name "*.log.*" -exec rm -rf {} \;
說明:
find:Linux查找命令,用戶查找指定條件的文件
/home/apache-tomcat-7.0.55-13-990*/webapps/HollyProxyServer2.0/WEB-INF/logs/:需要進行清理的目標目錄
-mtime:標準語句寫法
+10 :數字代表天數
-name "*.log.*":目標文件的類型,帶有log的所有文件
-exec:固定寫法
rm -rf:強制刪除包括目錄在內的文件
{} \;:固定寫法,一對大括號+空格+\+;
2、設置定時任務
每次都去手動執行任務太麻煩,我們可以新建一個shell腳本文件,再設置cron調度執行,讓系統自動去清理相關的文件。
(1)創建shell腳本(新建一個可執行文件auto-del-log.sh,并分配可運行權限)
touch /home/apache-tomcat-7.0.55-13-990*/webapps/ProxyServer2.0/WEB-INF/bin/auto-del-log.shchmod +x auto-del-log.sh
(2)編輯shell腳本
vi auto-del-log.sh
編輯auto-del-log.sh文件如下:
#!/bin/sh
find /home/apache-tomcat-7.0.55-13-990*/webapps/ProxyServer2.0/WEB-INF/logs/ -mtime +10 -name "*.log.*" -exec rm -rf {} \;
保存退出(:wq)。
(3)執行定時任務
#crontab -e進入定時任務編輯頁面,按i底部出現INSERT,開始進行任務腳本編輯,將auto-del-log.sh執行腳本加入到系統計劃任務,到點自動執行:
30 0 * * * /home/apache-tomcat-7.0.55-13-990*/webapps/ProxyServer2.0/WEB-INF/logs/ auto-del-log.sh
設置每天凌晨0:30執行auto-del-log.sh文件進行數據清理任務。
編輯完成按Ctrl+c,輸入:quit,之后再輸入:w!完成保存,ctrl+c,:quit退出。
總結
以上是生活随笔為你收集整理的Linux应用--日志定时清理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux服务器下搭建JDK、Tomca
- 下一篇: linux 其他常用命令