【Linuxコマンド】dateで日付や時刻を取得する方法

こんにちは!エンジニア兼ライターのヤマシタです。

Linuxには日付や日時を取得・確認するときに便利な「date」コマンドが用意されています。

ここでは「date」コマンドについて以下の内容で解説していきます。

date_image

この記事では「date」コマンドについてわかりやすく解説してますので、ぜひ使い方を覚えておきましょう!

dateコマンドとは

shutterstock_566265322
「date」コマンドは現在の日時を取得することができるコマンドです。

Linuxで運用するプログラムにおいて、日付を取得して処理を分岐するような処理はよく使われます。

「date」コマンドで現在の日付と時刻を表示する方法は簡単です。

$ date

実行結果:
date_image01

このようにdateと入力するだけで簡単に現在の日付と日時が表示されます。

またdateコマンドでは、さまざまな便利なオプションがあります。

たとえば、

  • 現在から数日後、数日前の日付を取得
  • 協定世界時(UTC)の時刻を取得
  • Linuxの日付・時刻を設定
  • 指定したフォーマットで日付を取得

などが可能です。

詳細については次項で解説します。

dateコマンドのオプション

以下に「date」コマンドで使用できる主なオプションを紹介します。

オプション説明
-d指定したオプションで日時を取得する
-s日時を設定する
-u協定世界時を取得する
+format指定した形式で日時を取得する ※後述

指定した形式で日時を取得

指定した形式で日時を取得するには「-d」オプションを使用します。

例えば、1日後の日付を取得したい場合は以下のように記述します。

$ date -d '1 day'

実行結果:
date_image02

「’1 day’」の代わりに「tomorrow」を指定しても同様の結果を得ることができます。

$ date -d tomorrow

また、数値を負数にすれば過去の日付を取得できます。

以下では1日前の日付取得しています。

$ date -d '-1 day'

もちろん「-1 day」の代わりに「yesterday」を指定しても同様に結果を得られます。

協定世界時を取得

協定世界時(UTC)を取得するには「-u」オプションを使用します。

協定世界時(UTC)とは、世界標準の時刻のことで、大規模なシステムではコンピュータの時間を日本時刻ではなく世界標準の時刻である(UTC)に合わせて運用することが多いと言えます。

$ date -u

実行結果:
date_image03

指定できるフォーマット

「+」で始まるオプションでは日付や日時を表示するフォーマットを細かく設定することができます。

フォーマットは「$date +フォーマット」の形式で指定します。

以下は指定できるフォーマットの種類となります。

書式説明
%Y西暦4桁(1970〜)
%y西暦下2桁(00〜99)
%m月(01〜12)
%b Jan~Dec
%BJanuary 〜 December
%d日(01〜31)
%H時(00〜23)
%I時(01〜12)
%M分(00〜59)
%S秒(00〜59)
%sUTCからの時刻(1970-01-01 00:00:00からの時刻)
%a曜日(Sun, Mon, Tue, Wed, Thu, Fri, Sat)
%A曜日(Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday)
%u曜日(1:月曜日 〜 7:日曜日)

フォーマットを指定する

ここでは実際にフォーマットを指定して日時を取得してみましょう。

フォーマットで日時を出力するには先述したように、「+」のあとにフォーマットを指定します。

以下の例では年月日時分秒をフォーマットで指定しています。

$ date +"%Y%m%d%I%M%S"

実行結果:
date_image04

「%Y%m%d%I%M%S」で指定したフォーマットで日時を出力することができました!

フォーマットを指定すれば、さまざまな組み合わせで時刻を取得することが可能です。

Linuxについてもっと知りたい方へ

そもそもLinuxについて、

「実はなんとなくしか理解していない…」
「Linuxを効率よく学習する方法が知りたい」

といった情報を知りたい方は、以下の記事も参考にしてみてくださいね!


【完全保存版】エンジニア監修!Linuxおすすめ入門書7選
更新日 : 2018年10月26日

【完全保存版】Linux入門サイトおすすめ7選
更新日 : 2019年9月11日

まとめ

ここでは、Linuxで日付・時刻を取得する「date」コマンドについて、

  • 現在の日付日時を取得する方法
  • よく使われるオプション
  • フォーマットを指定する方法

などについて解説しました。

dateコマンドは日付を取得するのに便利なコマンドですので、この機会に使い方をよく理解しておきましょう。

もしdateコマンドの使い方を忘れてしまったら、この記事を参考にしてくださいね。

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

ヤマシタ

エンジニア歴10年のフリーランスエンジニア。ITに関わるさまざまなコンテンツの企画・制作も行っています。
ITに関してはノウハウ系、ライフハック系、トレンド系など、200本以上の執筆経験があります。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説