web-dev-qa-db-ja.com

Mac OSXでUNIXエポック時間を人間が読める日付に変換する-BSD

Mac OSXでは、bashスクリプトのエポック時間は_123439819723_です。 _date -r 123439819723_で日付を人間が読める形式に変換できます。これにより_Fri Aug 26 09:48:43 EST 5881_が得られます。

しかし、日付は_mm/ddd/yyyy:hh:mi:ss_形式にする必要があります。 _date --date_オプションは私のマシンでは動作しません。

20
Nehal Shah

どうぞ:

# date -r 123439819723 '+%m/%d/%Y:%H:%M:%S'
08/26/5881:17:48:43
31
mike.dld

BSD dateを使用してUNIXエポック時間を変換するには、次を使用します。

date -j 123439819723 -f %s

-jは、dateがシステムクロックを設定しようとするのを防ぎ、-finput形式を指定します。あなたは付け加えられます +<whatever>は、GNU date。と同様にoutput形式を設定します。

11
chepner

コマンドシェルから

[aks@APC ~]$ date -r 1474588800
Fri Sep 23 05:30:00 IST 2016

[aks@APC ~]$ date -ur 1474588800
Fri Sep 23 00:00:00 UTC 2016

[aks@APC ~]$ echo "1474588800" | xargs -I {} date -jr {} -u
Fri Sep 23 00:00:00 UTC 2016
3
UserszrKs

Mac OSで実行するための統合ソリューション。

シェルコード:

T=123439819723 
D=$(date -j -f %s  $(($T/1000)) '+%m/%d/%Y:%H:%M:%S').$(($T%1000))
echo "[$T] ==> [$D]"

出力:

[123439819723] ==> [11/29/1973:11:50:19.723]

または1行:

> echo 123439819723 | { read T; D=$(date -j -f %s  $(($T/1000)) '+%m/%d/%Y:%H:%M:%S').$(($T%1000));  echo "[$T] ==> [$D]" }
[123439819723] ==> [11/29/1973:11:50:19.723]
1
0x8BADF00D