2012-04-17 61 views
7

如何獲取終端中目錄的最後修改日期?OSX中目錄的最近修改日期

+0

你可以張貼的'LS -ld輸出。 '從你的目錄裏面?不同版本的'ls'在輸出中使用不同的日期和時間格式 – Alex 2012-04-17 20:10:11

+0

drwx ------ @ 52 userid staff 1768 Apr 17 11:25 – user754905 2012-04-17 20:48:55

回答

9

如果你只是想修改日期(修改時間),並沒有別的

stat --printf='%y\n' directory_name 

或,自紀元以來的秒數:

stat --printf='%Y\n' directory_name 

這是更簡單的,有效的和比涉及ls/cut/grep/awk/find

編輯

前OP提到,這是將上述被張貼的解決方案健壯爲OSX在下面的評論。

OP到達解決方案使用stat/date,我同意解決方案,所以我在這裏添加它。

首先stat

stat -f "%m" /path/test.app 

獲得該目錄的修改時間,然後把它包在date得到它需要的格式

date -j -f "%s" "$(stat -f "%m" /path/test.app)" +"%Y/%m/%d %T" 
+1

stat:非法選項 - - – user754905 2012-04-17 20:50:19

+1

@ user754905什麼操作系統? OSX?嘗試'--format =%y',或看'man 1 stat' – je4d 2012-04-17 20:52:42

+0

如果我只是做統計,我得到這個:234881028 33275326 drwxr-xr-x 3 root staff 0 102「Apr 17 12:02:42 2012 「」Mar 22 15:05:11 2012「」Apr 17 11:25:37 2012「」Mar 22 15:05:11 2012「4096 0 0 /Users/userid/Library/test/test.app/ – user754905 2012-04-17 20:52:52

1

遞歸:

ls -Rlt | head -n 2 | cut -d ' ' -f10-12 

非遞歸:

ls -lt | head -n 2 | cut -d ' ' -f10-12 
3
ls -lcdoq your_directory | awk '{print $5" "$6}'