dateコマンドで日時の表示 macOS/Linux/Unix

date コマンドは、Unix系オペレーティングシステム(LinuxやmacOSなど)で使用されるコマンドラインユーティリティで、現在の日時を表示したり、設定したりするために使用されます。このコマンドは、様々なフォーマットで日時を表示するためのオプションを提供します。

dateコマンドの基本的な使用方法

現在の日時を表示

shell
date

特定のフォーマットで日時を表示(例: 年-月-日 時:分:秒)

shell
date "+%Y-%m-%d %H:%M:%S"

dateコマンドのフォーマットオプション

date コマンドで使用できるフォーマットオプションの一部を以下に示します。
オプション説明
%Y4桁の年(例: 2024)
%m2桁の月(例: 01~12)
%d2桁の日(例: 01~31)
%H24時間制の2桁の時間(例: 00~23)
%M2桁の分(例: 00~59)
%S2桁の秒(例: 00~59)

dateコマンドのオプション一覧

date コマンドの使用可能なオプションの一覧を以下の表にまとめます。この表は、一般的なUnix系オペレーティングシステム(LinuxやmacOSなど)での使用を想定しています。オプションは実行環境によって異なる場合がありますので、詳細は各システムのmanページ(man dateコマンドで参照)を確認してください。
オプション説明
-d--date指定した日付/時間で日時を表示します。
-f指定したフォーマットで複数の日時を解析します。
-IISO 8601形式で日時を表示します。オプションで時間の精度(hoursminutessecondsdate)を指定できます。
-r指定したファイルの最終修正時刻を表示します。
-RRFC 2822形式で日時を表示します。メールなどで使用される形式です。
-u--utc--universalUTC(協定世界時)で日時を表示します。
--help使用方法を表示します。
--versionバージョン情報を表示します。

特定の日時を表示

shell
date -d "yesterday"

ISO 8601形式で現在の日時を表示

shell
date -Iseconds

指定したファイルの最終修正時刻を表示

shell
date -r filename.txt

UTCで現在の日時を表示

shell
date -u

dateコマンドの応用編

特定の日付でdateコマンドを使用する

次は、 2024年12月25日のタイムスタンプを取得する例です:

shell
date -j -f "%Y-%m-%d" "2024-12-25" "+%s"

-j オプションは、日時を設定することなく、日時の変換や計算を行うために使用されます。つまり、システムの日時を変更せずに、特定の日時フォーマットの変換や計算を行いたい場合に便利です。

現在のUNIXタイムスタンプを取得

shell
date "+%s"

日時をファイル名に含める

次は、バックアップファイルの生成の例です:

shell
tar -czf backup_$(date "+%Y-%m-%d_%H-%M-%S").tar.gz /path/to/directory
date コマンドはシステムの設定やタイムゾーンに依存するため、表示される情報は実行環境によって異なります。また、システムの日時を変更するには、スーパーユーザー権限が必要です。

関連記事

最後までご覧いただきありがとうございます!

▼ 記事に関するご質問やお仕事のご相談は以下よりお願いいたします。
お問い合わせフォーム