1
我正在裝配我的第一個ruby腳本,它應該爲我的電腦設置喚醒時間(Kubuntu 10.04)。Time.local()使用意外時區
wake_h = 7
wake_m = 40
t = Time.now
puts "Current system time: #{t.to_s}"
t += 24*60*60 unless t.hour.between?(0, 5)
tvals = t.to_a
tvals[0,3] = 0 , wake_m, wake_h
wt = Time.local(*tvals)
puts "Setting wake up time to: #{wt.to_s}"
`rtcwake -m no -t #{wt.to_i}`
以下的輸出效果:
Current system time: Sun Feb 13 13:15:08 +0100 2011
Setting wake up time to: Mon Feb 14 07:40:00 -0100 2011
因此很明顯,紅寶石假設我的本地時區是-0100,儘管當前的系統時間產生的另一個+0100(正確)的時區。可能時間會使用錯誤的語言環境(我需要德國的時區),或者存在DST問題(我們目前在德國有DST)。我如何檢查/設置本地時間使用?
問候,neradis