dateコマンド

dateコマンドについて説明していきます。 dateコマンドはコマンド実行時の年、日付、時間、曜日を表示するコマンドです。 オプションを追加せずに実行すると以下のようになります。

$ date
-----------------------------------------------------
2018年 10月 18日 木曜日 05:43:21 UTC

UTCというのは協定世界時のことで、日本の時間とは約9時間の差があります。

このdateコマンドよくバックアップファイル作成時のファイル名などに利用されます。 以下のコマンドで日時を文字列として出力できます。

date '+%Y_%m_%d_%H_%M_%S'
-----------------------------------------------------
2018_10_18_05_53_22

この”内の% 英字 はそれぞれ年数や時間を表示していて、これを自由に書き換えることで1日単位や1時間単位とファイル名の編集ができる。 また、以下のオプションでその日から数日後や数日前のような編集もできる。

date '+%Y_%m_%d_%H_%M_%S' -d '5 days'
#5日前なら '5 days ago'
-----------------------------------------------------
2018_10_23_05_59_16

シェルスクリプトなどでバックアップを実行し日付のファイル名に圧縮したいときは以下のコマンドのようにすればできる。

tar -zcvf `date '+%Y%m%d'` backup/
#dateの前の ` と ' の違いに注意が必要!!