37

私は知っています

date -d @<timestamp in seconds>

awk '{print strftime("%c", <timestamp in seconds>)}'

しかし、ミリ秒がある場合はどうなりますか。ミリ秒のタイムスタンプの最後の3文字を削除せずにこれを行う簡単な方法はありますか(文字を削除するのは難しいことではありませんが、このような簡単なタスクには1ステップの方法があると思います)。

4

6 に答える 6

34

文字を削除する代わりに、1000 で割ることができます。

awk '{print strftime("%c", ( <timestamp in milliseconds> + 500 ) / 1000 )}'

または:

date -d @$(  echo "(MilliSecondTimeStamp + 500) / 1000" | bc)

または (MacOS):

gdate -d @$(  echo "(MilliSecondTimeStamp + 500) / 1000" | bc)

編集:除算ではなく商に合わせて調整。Edit2: Thx zeekvfu、修正済み。

于 2012-09-11T07:41:19.123 に答える
15
perl -e 'print scalar localtime(<timestamp> / 1000)'
于 2012-09-11T03:59:28.610 に答える