GNU Core Utilities/date
表示
date コマンドは、現在の日時を表示または設定するコマンドです。GNU coreutils に含まれており、Linux では GNU 版が、FreeBSD では BSD 版が提供されています。基本的な動作は共通していますが、書式指定オプションや日付計算の機能に違いがあります。
基本的な使い方
[編集]date
現在の日時を表示します。
主なオプション(GNU coreutils 版)
[編集]主なオプション オプション 説明 +FORMAT指定したフォーマットで日時を表示 -d, --date=STRING指定した日時を基に日時を表示 -u, --utcUTC(協定世界時)で表示 --rfc-3339=TYPERFC 3339 形式で日時を表示 -s, --set=STRING指定した日時にシステム時刻を設定(root 権限が必要)
例
[編集]現在の日時を表示
[編集]date
- 出力例
Mon Jan 31 12:34:56 JST 2025
指定フォーマットで日時を表示
[編集]date "+%Y-%m-%d %H:%M:%S"
- 出力例
2025-01-31 12:34:56
昨日の日付を表示
[編集]date -d "yesterday"
- 出力例
Sun Jan 30 12:34:56 JST 2025
1週間後の日付を表示
[編集]date -d "next week"
UTC(協定世界時)で日時を表示
[編集]date -u
システム時刻を設定(root 権限が必要)
[編集]date -s "2025-02-01 00:00:00"
FreeBSD 版との違い
[編集]FreeBSD でも date コマンドは提供されていますが、GNU coreutils 版といくつか違いがあります。
主な違い:
[編集]-dオプションの代替- FreeBSD の
dateには-dオプションがない。 - 代わりに
-vを使って日付を計算できる。
date -v-1d # 1日前 date -v+1w # 1週間後
- FreeBSD の
-sオプションの代替- FreeBSD では
dateでシステム時刻を設定する場合、-sではなくYYYYMMDDHHMM.SS形式を使う。
date 202502010000.00
- FreeBSD では
- GNU coreutils 版を FreeBSD で使う方法
coreutilsパッケージをインストールするとgdateという名前で GNU 版dateが使える。
pkg install coreutils gdate -d "yesterday"
詳しくは、それぞれの環境で man date を確認してください。