Files
最近修改的文件列表
如何獲取所有已修改文件的列表,例如 3 個月前。我檢查了這個問題,但我無法將它應用到我的場景中。我現在正在嘗試這個,它似乎正在工作,但我知道應該有更好的使用 find 的方法。
ls -ltR | grep -v '2011-05' | grep -v '2011-06' | grep -v '2011-07' | grep -v '2011-08
一種解決方案是:
find . -type f -mtime 90
這將查找 90 天前最後一次修改的文件(在 91 x 24 小時前開始並在 90 x 24 小時前結束的那 24 小時內)。
find . -type f -mtime -90
查找在過去 90 天內(或將來)修改過的文件。
find . -type f -mtime +90
查找至少在 91 天前修改過的文件(至少在 POSIX 兼容的find
實現中)。
正如@hknik 所說,
-mtime
操作find
可能是您最好的選擇,但如果您想在三個月前獲取所有文件,那麼您需要一個更大的網路:find . -type f -mtime -105 -mtime +76
這將在大約三個月前的一個月(即 11 到 15 週前)中找到正常文件。
(注意 76 而不是 7 x 11 = 77,因為您希望文件的年齡向下舍入到整數天數嚴格大於 76 以獲得至少 77 天(11 週)的文件)。