2012-08-29 63 views
15

在Mac(雪豹)我的bash腳本中,我有一個路徑和文件名,我需要獲取該文件的修改日期/時間。我發現我可以這樣做:
stat -f "%m" $MYFILE在Mac bash上格式化文件的修改日期/時間?

但是,這返回我認爲是時代日期/時間。我需要格式化日期/時間:YYYYMMDDThhmmss。我發現各種選項(如date)顯然取決於GNU,在我的Mac上我沒有。

在mac(BSD?)bash中,用戶指定的格式獲取文件日期/時間的標準方法是什麼?或者至少是一個日期/時間格式化函數,我可以將上面調用的stat的結果傳遞給。

回答

28

這其實很簡單,但是從GNU date足夠的不同之處在於它遠不及顯而易見的:

date -r $TIMESTAMP +%Y%m%dT%H%M%S 

要獲得stat做格式化:

stat -f "%Sm" -t "%Y%m%dT%H%M%S" FILE 
+2

謝謝!哇,我希望我會在幾個小時前問! –

+1

最後一個簡單的,直截了當的,沒有浮誇和有效的答案這個問題!我無法相信有多少人認爲我真的很在乎學習統計或日期命令的所有1,000個修飾符......只是給出了可行的命令,就是這樣!非常感謝! –

+0

哇,我讀的是「男人統計」,無法弄清楚。 – wisbucky