思考點:要實作定時操作,可以使用crontab來實作周期調用shell,删除過期檔案就是要找出過期檔案,再将起删除,shell指令find有根據檔案狀态改變時間來按範圍查找:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TRUlFcK52Yw50MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL4EzN4UDMzcTM5IDMxkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
注意時間範圍參數n的意義比較特别
-n表示未來的n*24小時之後,比如改了系統時間之後,檔案時間比現在時間大 類似:x >= y + 24 * n
n表示之前的n*24小時到之前的(n+1)*24小時之間一天的時間,例如n=1時,表示1天前到2天前這個時間段,
類似:x >= y - (n+1)*24 && x <= y - n*24
+n表示比目前時間早n*24小時的時間節點,類似:x <= y - n*24
綜上可以實作的方法:
第一步:shell實作找到滿足條件的檔案,并删除;
第二步:crontab定時執行shell,實作定時删除。
每天1點執行1次