2017-04-03 7 views
0

私は変数x=20170402に日付を持ち、この値を別のファイルから取得しています。
これを追加/減算して新しい変数に保存することでこれを修正したいと考えています。これどうやってするの?
例:1日を減算すると、y=20170401; 2日、y=20170331
それはGNUベースです。変数から日付を減算または追加する方法はありますか?

+0

あなたは 'GNU date'を持っていますか?または 'FreeBSD'のもの? 'date --version'を出力しますか? – 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" 
関連する問題