今号では、date コマンドの使い方やオプションについてご紹介します!
date コマンドとは
date コマンドは、システムの時刻を確認したり調整することができるコマンドです。
また時刻情報を取得する用途だけでなく、時刻の表示フォーマットを指定できます。
ログファイルに任意のフォーマットで日付を付与したい場合などにも便利ですね。
基本の書式
“date” コマンド (オプションなし) を実行すると、システム上で現在設定されている時刻を表示します。
以下の例ではシステムのタイムゾーンが日本標準時 (JST) となっており、日本の現在時刻が表示されます。
$ date 2023年 9月 5日 火曜日 13:49:55 JST
なお、多くのシステムではインストール直後は世界標準時 (UTC) が採用されています。
システムの初期設定で、日本標準時 (JST) を採用するように設定を変更しますが、
世界標準時 (UTC) は -u オプションで表示することもできます。
$ date -u 2023年 9月 5日 火曜日 05:19:37 UTC
date コマンドのオプション
次に、date コマンドで使用可能なオプションをご紹介します。
オプションには多くの種類がありますが、よく使用されると考えられるものを抜粋してご紹介します。
- 指定した形式で時刻を表示する
-d オプションを指定すると、指定した形式で時刻を表示します。
例えば、以下のような形式を指定することができます。今日から 3日後の日付を表示する場合
$ date 2023年 9月 6日 水曜日 10:50:13 JST $ date -d '3 day' 2023年 9月 9日 土曜日 10:50:23 JST
今日から 7日前の日付を表示する場合
$ date 2023年 9月 6日 水曜日 10:51:30 JST $ date -d '-7 day' 2023年 8月 30日 水曜日 10:51:35 JST
明日の日付を表示する場合
$ date 2023年 9月 6日 水曜日 10:52:35 JST $ date -d tomorrow 2023年 9月 7日 木曜日 10:52:40 JST
昨日の日付を表示する場合
$ date 2023年 9月 6日 水曜日 10:53:45 JST $ date -d yesterday 2023年 9月 5日 火曜日 10:53:50 JST
- 時刻を変更する
-s オプションを指定すると、システムの時刻を変更します。$ date 2023年 9月 6日 水曜日 11:12:37 JST $ date -s '2023-01-01 09:00:00' 2023年 1月 1日 日曜日 09:00:00 JST
時刻の指定方法は、以下のような書き方でも良いです。
$ date -s '2023-01-01 09:00:00' 2023年 1月 1日 日曜日 09:00:00 JST
日付のみでの指定もできますが、その場合は時刻が 00:00:00 に設定されます。
$ date -s '2023-01-01' 2023年 1月 1日 日曜日 00:00:00 JST
- 時刻のフォーマットを指定する
時刻の表示形式 (フォーマット) をもっと詳細に、細かく指定することもできますが、
この点については次号で詳しく説明します。