我有如下的可變輸出拿着日期的日期:需要減一天從給定的
輸出=「20141220」
我需要提取了一天了它並將其存儲在另一個變量即,類似下面:
輸出1 = 20141219"
,如果當月發生變化,即日期在31日或1,應當照顧
date -d
的版本不支持我使用的,任何線索將不勝感激......
我有如下的可變輸出拿着日期的日期:需要減一天從給定的
輸出=「20141220」
我需要提取了一天了它並將其存儲在另一個變量即,類似下面:
輸出1 = 20141219"
,如果當月發生變化,即日期在31日或1,應當照顧
date -d
的版本不支持我使用的,任何線索將不勝感激......
你可以檢查它是否是該月的第一天,如果是這樣,你可以設置之日起一個月回。你還必須檢查它是否是一年中的第一個月,如果是,則將年份設置回。
if (dayofdate == 1) {
//set one month back
//set day of the month accordingly
} else if (monthofdate == 1){
//set one year back
}
您的系統有Perl或PHP嗎? https://stackoverflow.com/a/24919566/2836621 –
如果您沒有現代'日期'二進制文件,我會避免使用Bash/shell腳本執行此任務 - 日期時間處理非常棘手且容易出錯。正如Mark所建議的那樣,在您的系統中確定一個可以爲您做日期算術的工具,然後調用它,而不是嘗試自己做數學。 – dimo414