utc 時間と localtime の間の bash diff を秒単位で取得する方法は?
質問する
2724 次
3 に答える
3
%s
エポック秒は明示的に UTC (または古い学校の場合は GMT) であるため、TZ を設定しても影響はありません。
トワルバーグの提案に似ています:
IFS=":" read hh mm < <(date +%:z)
echo $(($hh*3600+$mm*60))
date
コマンドに TZ を設定することで、これが意図したとおりに動作していることをテストできます。
IFS=":" read hh mm < <(TZ=Australia/Sydney date %:z) # answer is 39600
IFS=":" read hh mm < <(TZ=US/Eastern date +%:z) # answer is -18000
(これは厳密には bash の回答ではありません。GNU の日付または同等のものが必要なためです。5.90 以降では %:z および %::z がサポートされています)
于 2013-01-15T18:10:54.883 に答える
0
数秒で取得するには、おそらく少し作業を行う必要がありますがdate +%z
、構成されたタイムゾーン オフセットは として報告され[+-]HHMM
ます。その出力を解析し、適切な計算を行って数秒で把握します。
于 2013-01-15T16:16:00.323 に答える