2013-07-02 46 views
-2

我有一個像2013_07_02(可能是任何日期)的輸入。我想檢索距輸入日期2天的日期。如何做?UNIX Shell腳本(基於數字的減法)?

+2

這比減去的數字更加複雜..甚至比更復雜案例介紹..從「1988_03_01」回來的兩天是什麼?現在,我相當確定那裏有一些日期感知命令(作爲最後的手段,Perl或Python或者什麼都不可用),所以我會開始考慮如何以「真正的「日期類型.. – user2246674

回答

2

如果你想傳遞給日之前在相同的格式輸入輸出,即2013-07-02,替代_-

$ inputdate='2013_07_02'; 
$ date --date=${mydate//_/-}'-2 day' +'%Y_%m_%d' 
2013_06_30 
2

date是你的朋友:

date -d "2013-01-01 -2 days" +"%Y-%m-%d" 

此打印出2012-12-30

2

使用date-d選項。它瞭解相對日期,即使使用通用語言,如 date -d "two days ago"。 在你的情況類似

date -d "2013-07-01 -2 days" 

就足夠了。