Files

如何列出在特定時間範圍內更改的文件?

  • March 15, 2019

如何遞歸列出在 22.12.2011 和 24.12.2011 之間更改的所有文件?

一般來說,當您在目錄及其子目錄中遞歸查找文件時,請使用find.

指定日期範圍的最簡單方法find是在範圍的邊界處創建文件並使用-newer謂詞。

touch -t 201112220000 start
touch -t 201112240000 stop
find . -newer start \! -newer stop

使用 Gilles 的解決方案並在再次閱讀man find(1)之後,我找到了一個更簡單的解決方案。最好的選擇是-newerXY。可以使用 m 和 t 標誌。

m   The modification time of the file reference
t   reference is interpreted directly as a time

所以解決方案是

find . -type f -newermt 20111222 \! -newermt 20111225

下限含,上限獨占,所以我加了1天!它是遞歸的。它在 find v4.5.9 上執行良好。

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