BashとLinuxでEpochタイムスタンプを取得する方法

コマンドラインからdate、awk、その他のLinuxツールを使用してUnixエポックタイムスタンプを取得・変換。シェルスクリプト、ログ分析、cronジョブに便利。

Programming

詳細な説明

BashとLinuxでのEpochタイムスタンプ

Linuxのdateコマンドは、コマンドラインでエポックタイムスタンプを扱う主要なツールです。

現在のEpochの取得

date +%s       # 1705312200(秒)

Epochから人間が読める形式への変換

# GNU date(Linux)
date -d @1705312200 +"%Y-%m-%d %H:%M:%S"

# BSD date(macOS)
date -r 1705312200 +"%Y-%m-%d %H:%M:%S"

人間が読める形式からEpochへの変換

date -d "2024-01-15 09:30:00 UTC" +%s

# 相対日付
date -d "+1 hour" +%s
date -d "tomorrow" +%s

Bashでのカウントダウン

#!/bin/bash
target=$(date -d "2025-01-01 00:00:00 UTC" +%s)
now=$(date +%s)
diff=$((target - now))
days=$((diff / 86400))
echo "カウントダウン: ${days}日"

ユースケース

シェルスクリプト、cronジョブ、ログ分析パイプライン、DevOps自動化でこれらのコマンドを使用してください。

試してみる — Epoch Countdown

フルツールを開く