2014-10-06 64 views
0

我「的m問題,使用bash格式化我的日期,我」正在尋找一個簡單的腳本,可以創建一個看起來像「2014-10-05_2014-09-30_Thisformat /」猛砸日期格式

enddate= $(date +%F) #store in a variable so that it can be read later 
startdate= $(date +%F -d "5 days ago") #store in a variable so it can be read later 

range= $startdate"_"$enddate"_"Thisformat/" 
echo $range 
範圍

感謝您抽空看看

+2

它看起來像在等號右側有一個額外的空間。 bash中的任務不允許空間分配。而你的報價是錯誤的。試試'range =「$ {startdate} _ $ {enddate} _Thisformat /」' – ooga 2014-10-06 00:38:19

+0

哈哈就是這樣!非常感謝(不能相信這是一個愚蠢的錯誤,「 – and0rsk 2014-10-06 00:40:40

+0

@ooga:行情是好的,只要沒有空格或字符串中的特殊字符,毫無疑問應該也可以。 – Amadan 2014-10-06 00:40:42

回答

3

正確答案是

enddate=$(date +%F) 
startdate=$(date +%F -d "5 days ago") 
range=${enddate}"_"${startdate}"_Thisfile/" 
echo $range 

的問題是在等號前面的額外空間。感謝ooga的幫助!

+0

+1您的回答是好。 – John1024 2014-10-06 00:49:51