Linuxコマンド · 1 min read · Sep 17, 2025

初心者のためのLinux Dateコマンドチュートリアル(8つの例)

Linuxコマンドラインで作業していると、現在のシステム時刻を表示(または変更)する必要がある状況に直面することがあります。それだけでなく、異なるタイムゾーンにいるメンバーとチームで作業している場合、他のメンバーがいるゾーンの時間に関連する情報を常に把握しておきたいと思うかもしれません。

これらすべて(およびそれ以上)を実行できるツールを探しているなら、dateというコマンドが存在することを知って喜ぶことでしょう。このチュートリアルでは、’date’コマンドの基本とその使用方法について説明します。しかし、その前に、ここで言及されているすべてのコマンドと指示は、Ubuntu 16.04 LTSでテストされていることを言及しておく価値があります。

Linux dateコマンド

以下がdateコマンドの一般的な構文です:

date [OPTION]... [+FORMAT]

そして、ツールのマニュアルページには次のように記載されています:

date - システムの日付と時刻を表示または設定する

指定されたFORMATで現在の時刻を表示するか、システムの日付を設定します。

以下のQ&Aスタイルの例は、このコマンドがどのように機能するかをよく理解するのに役立つでしょう。

Q1. dateコマンドを使用してシステムの日付/時刻情報を取得するには?

それがツールのデフォルトの動作です。システムの日付と時刻を知るには、次のようにツールを実行するだけです(オプションなしで):

date

以下はコマンドの実行例です:

そのため、日、日付、時刻、タイムゾーン、年などの情報が出力に表示されることがわかります。

Q2. 特定の曜日に対応する日付を取得するには?

ほとんどの場合、特定の曜日の日付を知るためにカレンダーを参照します。たとえば、’次の火曜日’の日付を知りたいという要件があるかもしれません。この場合も、’date’コマンドを使用することで可能です。

-dまたは–dateコマンドラインオプションが役立ちます:

date -d "next Tuesday"

以下は上記コマンドの実行例です:

ご覧のとおり、コマンドは次の火曜日が7月4日であることを明らかにしました。

-d/–dateオプションへの入力はさまざまなタイプが可能です。マニュアルページでは次のように説明されています:

--date=STRINGは、主に自由形式の人間が読みやすい日付文字列であり、
"Sun, 29 Feb 2004 16:21:42 -0800"や"2004-02-29 16:21:42"、
さらには"next Thursday"のようなものです。

日付文字列には、カレンダーの日付、時刻、タイムゾーン、曜日、相対時間、相対日付、数字を示す項目が含まれる場合があります。
空の文字列は、日の始まりを示します。

日付文字列の形式は、ここで簡単に文書化されているよりも複雑ですが、infoドキュメントで完全に説明されています。

dateのinfoドキュメントにアクセスするには、次のコマンドを使用します:

info date

Q3. ISO 8601形式で日付/時刻情報を表示するには?

ツールにISO 8601形式で日付/時刻情報を表示させたい場合、–iso-8601コマンドラインオプションを使用できます。このオプションでは、形式を指定する必要があります。

--iso-8601[=FMT]

マニュアルページでは、’format’について次のように説明されています:

FMT='date'は日付のみ(デフォルト)、'hours'、'minutes'、'seconds'、または'ns'は、指定された精度で日付と時刻を示します。例:2006-08-14T02:34:56-0600

たとえば、次のコマンドをテストしました:

date --iso-8601=seconds

そして、以下の出力が得られました:

2017-06-27T14:20:39+05:30

Q4. RFC 3339形式で日付/時刻を表示するには?

ご想像のとおり、これにも専用のコマンドラインオプションがあります:–rfc-3339。前のセクションで説明したオプションと同様に、こちらも形式指定子を入力する必要があります。

以下のスクリーンショットは、このオプションの実行例を示しています:

同様に、–rfc-2822オプションを使用して、その形式で出力を表示することもできます。

Q5. dateを使用してファイルの最終修正時刻を表示するには?

dateコマンドを使用してファイルの最終修正時刻を表示することもできます。このツールの-rオプションを使用すると、これが可能です。以下はその例です:

date -r file1

Q6. dateコマンドを使用してシステムの日付/時刻を設定するには?

システムの日付/時刻を別の値に設定するには、-sコマンドラインオプションを使用します。このオプションでは、システムの日付/時刻を設定するための入力として使用される文字列が必要です。

date -s STRING

注:STRINGSとして使用できるオプションは、上記のQ2で既に説明されています。

以下は、 -s オプションを使用してシステムの日付と時刻を設定した例です:

date -s "2017-06-27 14:53:00"

このオプションが機能するためには、’sudo’を使用する必要がある場合があります。sudoが何かよくわからない方は、こちらを参照してください。

Q7. 他の場所の現在の時刻を表示するには?

‘date’コマンドを使用して、他の場所の現在の時刻を表示するには、たとえばオーストラリアのメルボルンのように、次のように使用します:

TZ="Australia/Melbourne" date

以下は上記コマンドの実行例です:

*注:’tzselect’コマンドを使用して、TZに渡す必要がある値を見つけることができます。*

Q8. 協定世界時(UTC)を表示または設定するには?

これには、-uコマンドラインオプションを使用します。たとえば、次のコマンドはUTCで情報を表示します:

date -u

結論

ほとんどの方が同意するように、dateコマンドは理解しやすく、使用も簡単です。さらに、複数の地理的場所を扱う際にも使用できるため、重要なコマンドラインツールとなっています。ここではツールのコマンドラインオプションのほとんどを説明しましたので、ぜひ自分のシステムで試してみてください。詳細については、コマンドのマニュアルページをご覧ください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。