dateコマンドで日時の表示 macOS/Linux/Unix
date コマンドは、Unix系オペレーティングシステム(LinuxやmacOSなど)で使用されるコマンドラインユーティリティで、現在の日時を表示したり、設定したりするために使用されます。このコマンドは、様々なフォーマットで日時を表示するためのオプションを提供します。dateコマンドの基本的な使用方法
現在の日時を表示
shell
date
特定のフォーマットで日時を表示(例: 年-月-日 時:分:秒)
shell
date "+%Y-%m-%d %H:%M:%S"
dateコマンドのフォーマットオプション
date コマンドで使用できるフォーマットオプションの一部を以下に示します。オプション | 説明 |
---|---|
%Y | 4桁の年(例: 2024) |
%m | 2桁の月(例: 01~12) |
%d | 2桁の日(例: 01~31) |
%H | 24時間制の2桁の時間(例: 00~23) |
%M | 2桁の分(例: 00~59) |
%S | 2桁の秒(例: 00~59) |
dateコマンドのオプション一覧
date コマンドの使用可能なオプションの一覧を以下の表にまとめます。この表は、一般的なUnix系オペレーティングシステム(LinuxやmacOSなど)での使用を想定しています。オプションは実行環境によって異なる場合がありますので、詳細は各システムのmanページ(man dateコマンドで参照)を確認してください。オプション | 説明 |
---|---|
-d、--date | 指定した日付/時間で日時を表示します。 |
-f | 指定したフォーマットで複数の日時を解析します。 |
-I | ISO 8601形式で日時を表示します。オプションで時間の精度(hours、minutes、seconds、date)を指定できます。 |
-r | 指定したファイルの最終修正時刻を表示します。 |
-R | RFC 2822形式で日時を表示します。メールなどで使用される形式です。 |
-u、--utc、--universal | UTC(協定世界時)で日時を表示します。 |
--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
date コマンドはシステムの設定やタイムゾーンに依存するため、表示される情報は実行環境によって異なります。また、システムの日時を変更するには、スーパーユーザー権限が必要です。tar -czf backup_$(date "+%Y-%m-%d_%H-%M-%S").tar.gz /path/to/directory
関連記事
アイデアノート > macOSで使えるシェル