😎

Zsh で $EPOCHREALTIME を使いたい

2021/03/03に公開

答え

$ zmodload zsh/datetime

$EPOCHREALTIME とは?

$EPOCHREALTIME はその瞬間の UNIX 時間を浮動小数点数で取得できるシェルの組み込み環境変数です。Bash では、バージョン 5 から追加されました。

Bash
$ echo $EPOCHREALTIME
1609927363.589775

Zsh では、バージョン 4.3.13 から追加されたようです。

しかし、Zsh の場合、デフォルトではこの環境変数は有効ではありません。

Zsh
$ echo $EPOCHREALTIME
# 何も出ない

この環境変数を有効にするには以下を実行します。

Zsh
$ zmodload zsh/datetime

これで使えるようになりました。

Zsh
$ echo $EPOCHREALTIME
1609927355.8729970455

常にこの環境変数を使いたい場合は、上記の設定を ~/.zshrc などに書き込めば OK です。

余談

Bash よりも Zsh のほうが浮動小数点以下が細かいですね。

参考サイト

GitHubで編集を提案

Discussion