2017-04-03 76 views
0

我在變量x=20170402中有一個日期,從另一個文件中獲取該值。
我想通過添加/減去並保存到新變量來修改此。我怎樣才能做到這一點?如果我減去一天,y=20170401;兩天,y=20170331
它是基於GNU的。如何從變量中減去或添加日期?

+0

你有'GNU日期'嗎?或'FreeBSD'嗎?輸出日期 - 版本? – Inian

+1

你也可以提供你需要輸入的精確輸出嗎?這些信息是不夠的 – Inian

回答

4

隨着GNU date它可以很容易地完成它的-d開關。

x=20170402 
date -d "$x -1 days" "+%Y%m%d" 
20170401 

和2天

date -d "$x - 2 days" "+%Y%m%d" 
20170331 
2

命令日期應該是足夠的。

$ x=20170402; 
$ date -d "$x 1 day ago" +'%Y%m%d' 
20170401 

$ date -d "$x 2 day ago" +'%Y%m%d' 
20170331 
0

-d標誌爲此將達到目的。 $Number是您希望減少的天數。

x=20170402 
past_date=$(date -d "$x - $Number days" +%Y%m%d) 
echo "$past_date"