Bash将两个纪元时间转换为剩余时间

时间:2016-08-01 06:30:52

标签: bash epoch

我试图将两个Epoch(Unix时间戳)日期转换为人类可读日期(剩余时间)

AT=$(echo $RES | jq '.results[0].unixtime' | tr -d '"') # Returns unix time in JST.
NOW=$(TZ=":Asia/Tokyo" date +%s) # Returns current time in JST
DIFF=$(echo $AT-$NOW | bc)

作为一个例子;

AT=1470038400
NOW=1470032871
DIFF=5529

如何以下列格式获得两者之间的剩余时间:DAYd HOURh MINm SECs?

1 个答案:

答案 0 :(得分:0)

您可以尝试以下

printf "%dd %dh %dm %ds\n" $(( DIFF / (3600 * 24) ))  $(( (DIFF / 3600 ) % 24)) $(( (DIFF / 60) % 60)) $((DIFF % 60))