Linux find 命令是一個方便的工具,可讓您查找或定位系統上的文件。 您可以指定根據廣泛的條件(例如文件類型、文件位置和文件權限等)來定位文件。 此外,您可以找到最近幾天更改的文件。 這將是本教程的重點,並將探索根據時間戳檢索文件的各種方法。
文件時間戳的類型
Linux 中的文件帶有以下時間戳:
時間: 這是訪問時間戳,它顯示上次讀取或訪問文件的時間。 這意味著使用應用程序打開文件並讀取其內容。
阿明: 這會在幾分鐘內打印出文件被訪問的時間。
時間: 這是修改後的時間戳。 它顯示文件上次被程序或用戶修改的時間。 當文件的內容被更改或修改時,mtime 會發生變化。 “修改”是指將某些數據附加到文件、重新組織或部分或全部刪除。
分鐘:mmin 指令顯示上次修改文件的時間(以分鐘為單位)。
時間: 這是更改時間或更改時間戳。 它顯示文件的屬性何時更改。 一個好的 example 正在修改有效更改時間戳的文件所有權或權限。
這是時間戳的簡要概述。 在這裡,我們將更多地關注“時間 和 ‘時間‘ 時間戳。
使用 Mtime – 修改時間
在本節中,我們將重點介紹如何使用 時間 選項。 這列出了幾天前訪問過的文件。
要列出過去 90 天內時間戳更改的文件,請使用 + 時間 90 選項。
- – 時間 +90 暗示您正在查找 90 多天前更改的文件。
- – mtime -90 表示您正在查找不到 90 天前更改的文件。
- -mtime 90 意味著您正在尋找一個剛修改了 90 天的文件。
為了 example, 搜索 txt 文件 /home/james/data
不到 90 天前修改過的目錄使用以下命令:
$ find /home/james/data -iname "*.txt" -mtime -90 -print
此外,您可以使用數字參數,如下所示:
-1
過去 24 小時-0.5
過去 12 小時-0.25
過去 6 小時+2
兩天多
為了 example, 以下命令顯示過去 12 小時內修改的文本文件
$ find /home/james/data -iname "*.txt" -mtime -0.5
使用 atime – 文件訪問
正如我們之前看到的, 時間 是用於顯示用戶或應用程序最後一次訪問文件的屬性。 讓我們看看幾個例子:
要查看在過去 30 天內訪問過的主目錄中的所有文本文件,請運行
$ find /home/james -iname "*.txt" -atime -30 -type f
要查看 文檔 20 天前訪問的文件,請運行以下命令。 請注意,在 20 值之前沒有減號。
$ find /home/james -iname "*.docx" -atime 20 -type -f
-daystart 選項
這 -daystart
選項測量從當天開始而不是 24 小時前開始的時間。 為了 example. 要找出昨天編輯的所有 pdf 文件,請運行:
$ find /home/james/data/ -mtime 1 -daystart -iname "*.pdf"
要列出 3-5 天前編輯過的文件,請運行以下命令:
$ find /home/james/data/ -mtime 3 -mtime -5 -daystart -iname "*.pdf"
-newer 選項
-newer 選項比較來自兩個不同目錄的文件並顯示較新的文件。 為了 example, 查找更新的文件 /home/james/Downloads
目錄比在 /home/james/images
目錄,運行以下命令
$ find /home/james/Downloads -newer /home/james/images
結論
我們今天的主題到此結束,我們研究瞭如何列出最近幾天更改的文件或在特定時間段內訪問的文件。 要獲取文件的最後修改日期,您可以在 Linux 中使用幾個不同的命令。
非常歡迎您的反饋。