Files

最近修改的文件列表

  • July 1, 2020

如何獲取所有已修改文件的列表,例如 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 週)的文件)。

引用自:https://unix.stackexchange.com/questions/33850