Linux 定時刪除舊檔案

在 Linux 下有時會有一些暫存檔或日誌檔需要定時刪除, 如果只要在特定目錄下, 刪除檔名包含有指定字串的舊檔案, 可以不用 Shell Script, 而直接在 crontab 用 find 指令完成 。

例如我想將 /var/www/html/tmp/ 目錄下, 將所有超過 7 日的檔案, 並以 “delname.log” 作為檔案開頭刪除, 可以在 crontab 加上以一行, 先開啟 crontab :

# crontab -e

加入以下內容:

儲存後離開編輯器便完成了。

以上加入的紀錄, 會在每天早上 5:00, 將 /var/www/html/tmp/ 目錄下, 所有以 “delname.log” 作為檔案開頭及超過 7 的檔案刪除。

上面的 “-mtime” 表示檔案修改時間, 除了 mtime 外, 還可以用 “atime” (存取時間) 及 “ctime” (建立時間) 作為條件。




Leave a Reply