localtimeとgmtime

いまさらすぎ感たっぷりだけど調べてみた。

perldoc -f time

time Returns the number of non-leap seconds since whatever time the system considers to be the epoch, suitable for feeding to "gmtime" and
"localtime". On most systems the epoch is 00:00:00 UTC, January 1, 1970;

うるう秒を考慮しない、epochからの秒数を返す。
基本的にはepochは00:00:00 UTC, January 1, 1970。


gmtime,localtimeはともにtimeを引数に取って、gmtimeはGMTでのlocaltimeはローカルのタイムゾーンでの年月日を返してくれる。

perl -le 'my @t=gmtime(time+9*3600); printf "%04d-%02d-%02d %02d:%02d:%02d\n", $t[5]+1900, $t[4]+1, $t[3], @t[2,1,0];'

perl -le 'my @t=localtime; printf "%04d-%02d-%02d %02d:%02d:%02d\n", $t[5]+1900, $t[4]+1, $t[3], @t[2,1,0];'

__END__
2010-10-08 13:38:35