Shell
如何使用 korn shell 將時間從本地時區轉換為悉尼時區?
我需要將時間從本地時區 (CET/CEST) 轉換為悉尼時區 (AEDT/AEST)。我試過這樣的事情:
export date=$(date "+%Y-%m-%d %H:%M:%S AEDT") date "+%Y-%m-%d %H:%M:%S %Z" -d "$date"
它不起作用,它無法辨識“AEDT”,但是我用“UTC”嘗試了這個並且它起作用了。我試圖用“Australia/Sydney”替換“AEDT”(我在 /usr/share/zoneinfos 中找到它),但結果是一樣的。
我會很感激任何建議,我正在使用 korn shell。謝謝。
如果要將本地時區的隨機時間轉換為另一個時區的時間:
$ date -d @$(date +%s -d '2014/10/01 12:34:56') Wed Oct 1 12:34:56 CEST 2014 $ TZ=Australia/Sydney date -d @$(date +%s -d '2014/10/01 12:34:56') Wed Oct 1 20:34:56 EST 2014
我使用自 unix 時代以來的秒數作為交流時間點的自然方式。
使用幾種腳本語言:
perl -MDateTime -E 'say DateTime->now(time_zone => "local")->set_time_zone("Australia/Sydney")->strftime("%F %T %Z")' echo 'puts [clock format [clock seconds] -format {%Y-%m-%d %T %Z} -timezone ":Australia/Sydney"]' | tclsh