快速找到最近修改的檔案!

大雄45發表於2023-05-10

快速找到最近修改的檔案!快速找到最近修改的檔案!

不過,假設你忘記了白天早些時候建立的檔案的名稱(在你包含了數百個檔案的 home資料夾中),但現在你有急用。下面用不同的方式只列出所有你今天建立或修改的檔案(直接或間接)。

1、 使用 ls 命令,只列出你的 home 資料夾中今天的檔案
# ls -al --time-style=+%D | grep 'date +%D'

其中:
-a- 列出所有檔案,包括隱藏檔案
-l- 啟用長列表格式
>--time-style=FORMAT- 顯示指定 FORMAT 的時間
+%D- 以  >%m/%d/%y(月/日/年)格式顯示或使用日期

快速找到最近修改的檔案!快速找到最近修改的檔案!

在Linux中找出最近的檔案

此外,你使用可以  -X 標誌來按字母順序對結果排序:

# ls -alX --time-style=+%D | grep 'date +%D'

你也可以使用  -S標誌來基於大小(由大到小)來排序:

# ls -alS --time-style=+%D | grep 'date +%D'
2、 另外,使用 find 命令會更靈活,並且提供比ls更多的選項,可以實現相同的目的
  1.   -maxdepth級別用於指定在搜尋操作的起點下(在這個情況下為當前目錄)的搜尋層級(子目錄層級數)。
  2.   newerXY用於所尋找的檔案的時間戳  X 比參照檔案的時間戳 Y更新一些的檔案。 X 和  Y 表示以下任何字母:
    -a- 參照檔案的訪問時間
    -B- 參照檔案的建立時間
    -c- 參照檔案的 inode 狀態改變時間
    -m- 參照檔案的修改時間
    -t- 直接指定一個絕對時間

下面的命令意思是隻找出 2016-12-06 這一天修改的檔案:

# find . -maxdepth 1 -newermt "2016-12-06"

快速找到最近修改的檔案!快速找到最近修改的檔案!

在 Linux 中找出今天的檔案

重要:在上面的  中使用正確的 日期格式作為參照時間,一旦你使用了錯誤的格式,你會得到如下錯誤:

 # find . -maxdepth 1 -newermt "12-06-2016"
#find: I cannot figure out how to interpret '12-06-2016' as a date or time

或者,使用下面的正確格式:

#  find . -maxdepth 1 -newermt "12/06/2016"
或者
# find . -maxdepth 1 -newermt "12/06/16"

快速找到最近修改的檔案!快速找到最近修改的檔案!

在本文中,我們解釋瞭如何使用 ls 和 find 命令幫助只列出今天的檔案。 請使用以下反饋欄向我們傳送有關該主題的任何問題或意見。 你也可以提醒我們其他可以用於這個目的的命令。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2946395/,如需轉載,請註明出處,否則將追究法律責任。

相關文章