Files
如何執行 ls 然後按創建日期對結果進行排序?
日期按什麼順序排列?當然不是字母數字順序。
ls -lt
按修改時間排序。但我需要創作時間。
大多數 unice 沒有文件創建時間的概念。您無法
ls
列印它,因為沒有記錄資訊。如果您需要創建時間,請使用版本控制系統:將創建時間定義為簽入時間。如果您的 unix 變體有創建時間,請查看其文件。例如,在Mac OS X(我知道的唯一例子)上,使用
ls -tU
. Windows 也儲存創建時間,但它並不總是暴露給 unix 實用程序的埠,例如 Cygwinls
沒有顯示它的選項。該stat
實用程序可以顯示創建時間,在 GNU 實用程序中稱為“出生時間”,因此在 Cygwin 下您可以顯示按出生時間排序的文件stat -c '%W %n' * | sort -k1n
。請注意,ctime (
ls -lc
)不是文件創建時間,而是inode更改時間。每當有關文件的任何內容(內容或元數據)發生更改時,都會更新 inode 更改時間,除非僅在讀取文件時不會更新 ctime(即使 atime 已更新)。特別是,ctime 總是比 mtime(文件內容修改時間)更新,除非 mtime 已明確設置為將來的日期。