我正在使用 find 命令列出名稱包含字串的檔案:
find ~/ -type f -name "*inductive*"
我想使用管道對生成的檔案清單進行排序。我希望能夠按檔案大小、建立日期、存取日期進行排序...我該怎麼做?謝謝。
答案1
在 Linux 中不可能按建立時間對輸出進行排序(ctime
不是檔案建立日期)。stat
能夠顯示文件的出生時間使用%w
和%W
格式標籤,但它們始終分別顯示-
和0
,即使在儲存建立時間/出生時間的檔案系統上也是如此。因此,它在 Linux 上實際上沒有任何用處。
不過,其他兩種排序順序也是可能的:
# Sort by size:
find ~/ -type f -name "*inductive* -exec ls -ltu {} \; | sort -k 5 -n
# Sort by access time:
find ~/ -type f -name "*inductive* -exec ls -ltu {} \; | sort -k 6 -M
您可以新增-r
標誌來sort
反轉排序順序。請參閱man sort
以獲取更多資訊。
根據 的find
輸出大小,可能需要一些時間才能sort
產生已排序的輸出。