linux服務器清理指定日期所有垃圾日誌文件

 阿里雲服務器推薦購買99元

 硬盤再大,也架不住日誌文件多。

1、找到並清除30天前的所有日誌文件。

find / -name "*.log" -mtime +30 -exec rm -rvf {} \; 

--mtime +30表示查找超過30天的,也就是查找30天前的文件。

如果不需要時間就去掉--mtime +30,將刪除所有日誌文件。

-mtime   -n +n              #按文件更改時間來查找文件,-n指n天以內,+n指n天以前
-atime   -n +n              #按文件訪問時間來查找文件,-n指n天以內,+n指n天以前 
-ctime   -n +n              #按文件創建時間來查找文件,-n指n天以內,+n指n天以前
-mtime 0 表示文件修改時間距離當前爲0天的文件,即距離當前時間不到1天(24小時)以內的文件。
-mtime 1 表示文件修改時間距離當前爲1天的文件,即距離當前時間1天(24小時-48小時)的文件。
-mtime +1 表示文件修改時間爲大於1天的文件,即距離當前時間2天(48小時)之外的文件
-mtime -1 表示文件修改時間爲小於1天的文件,即距離當前時間1天(24小時)之內的文件
當然用此方法清理很久前的附件圖片腳本文件也可以。

2、用服務器定時任務清理log

clear_logs.sh

#!/bin/bash
find /  -name "*.log" -mtime +30  -exec rm -rf {} \;

執行,每天1點執行清理日誌

0 1 * * * /root/clear_logs.sh

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章