2015-06-12 81 views
0

我可以將UTC當前時間與「date -u」關聯起來。 但我想同時打印一些常見時區的當前時間。 (UTC,EDT,CEST ...)顯示大部分地區時區的當前時間(UTC,EDT,CEST ...)

我可以創建一個腳本,並添加severals:

date -u -d 'x hour ago' 

但有時候,改變時間。 (如法國) 是否有另一種解決方案來獲得基於國家/城市的「真實」當前時間?

編輯: 這裏我所用答案來完成:

function dateall(){ 
    echo -n "US Pacific : " && TZ=US/Pacific date 
    echo -n "US Eastern : " && TZ=US/Eastern date 
    echo -n "UTC ~ GMT : " && date -u 
    echo -n "Europe Paris : " && TZ=Europe/Paris date 
    echo -n "Asia Bangkok : " && TZ=Asia/Bangkok date 
} 

回答

3

您可以指向TZ的時區,你想:

$ TZ=Europe/Paris date 
Fri Jun 12 07:41:28 CEST 2015 
+0

如果考慮到夏令時,那麼這不是一個真正的通用解決方案。 – Arpith

+0

@Arpith我不確定我瞭解你的反對意見。時區會自動處理DST。比較f.i. 'TZ =歐洲/巴黎日期-d'2015年12月12日'到'TZ =歐洲/巴黎日期-d'2015年6月12日'。 – lcd047

1

在我dateutils有datezone做什麼你想在一個簡單的命令:

$ datezone now Europe/Paris US/Pacific US/Eastern UTC 
2015-06-12T08:23:32+02:00 Europe/Paris 
2015-06-11T23:23:32-07:00 US/Pacific 
2015-06-12T02:23:32-04:00 US/Eastern 
2015-06-12T06:23:32+00:00 UTC 
2015-06-12T13:23:32+07:00 Asia/Bangkok 
$ 

還有另外一個好處,即您可以獲得當前的UTC偏移量和時間保證一致,即當前時間僅確定一次,然後用於所有時區轉換。

相關問題