カレンダーは日付を確認してから3ヶ月前を検索し、その月の日数を追加します。

カレンダーは日付を確認してから3ヶ月前を検索し、その月の日数を追加します。

calコマンドまたはdateコマンドを使用して現在の日付を表示し、現在の日付から3ヶ月前を表示し、この3ヶ月のすべての日付を現在の日付に追加したいと思います。これを行う方法はありますか?

したがって、今日の日付は次のように表示されます。

Fri Dec 19 13:23:36 GMT 2014 

3ヶ月前は次のようになりました。

Fri Sep 19 13:23:36 GMT 2014 

私はLinuxが9月19日から12月19日までのすべての日付を追加し、その計算結果を表示したいと思います。

ベストアンサー1

bashそしてGNUdate

#grab today's date in YYYYMMDD format
today=$(date +%Y%m%d)
#grab date as of 3 months ago in YYYYMMDD format
three_months_ago=$(date +%Y%m%d --date='3 months ago')

#now convert dates to "seconds since epoch" format, and then divide the difference  by 60*60*24 to convert from seconds to days
printf '%d\n' $(( ($(date --date=$today +%s) - \
  $(date --date=$three_months_ago +%s))/(60*60*24) ))
91

おすすめ記事