Linux dateコマンドでN日後の日付を取得する

Linux dateコマンドでN日後の日付を取得する

Linuxで、dateコマンドでN日後の日付を取得する手順を記述してます。

環境

  • OS Rocky Linux release 8.4 (Green Obsidian)
  • shell: /bin/bash

手順

dateコマンドでN日後の日付を取得するには、「date」コマンドのオプション「-d」を使用します。

例えば、1日後の日付を取る場合は以下となります。

※本日は2021年9月30日とします。

$ date -d '1 days'

2021年 10月  1日 金曜日 09:10:48 JST

1日後であれば、以下のようにしても同じです。

$ date -d tomorrow

長くなるだけですが、オプション「-d」を「–date」ともできます。

$ date --date tomorrow

7日後だと、

$ date -d '7 days'

2021年 10月  7日 木曜日 09:15:50 JST

となります。

フォーマットを指定する場合は、以下のようにします。

$ date "+%Y/%m/%d-%H:%M:%S" -d '7 days'

2021/10/07-09:18:54

年月日だけ取得する場合は、フォーマットを年月日だけにします。

$ date "+%Y/%m/%d" -d "7 days"

2021/10/07

月を指定

月を指定することも可能です。

$ date -d '1 month 7 day'

2021年 11月  6日 土曜日 09:36:49 JST

N日前

逆にN日前の日付を取得する場合は「ago」とします。

$ date -d '7 days ago'

2021年  9月 23日 木曜日 09:16:18 JST

もしくは、agoを使わずにマイナスを使用します。

$ date -d '-7 days'