[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: date und Sommerzeit



Am 12.04.2009 um 20:43 schrieb Matthias Meyer:

> Hi,
>
> Mir ist gerade etwas seltsames widerfahren:
> $ time="2009-04-12 20:25:16"
> $ date -d "$time"
> Son Apr 12 20:25:16 CEST 2009
>
> $ seconds=`date -d "$time" +%s`
> $ date -d '1970-01-01 '$seconds' seconds'
> Son Apr 12 19:25:16 CEST 2009
>
> Verliert date bei der Umrechnung über "sekunden seit 1.1.1970"
> die Sommerzeit?

Nein, denn in der Variablen seconds steht die Zahl der seit 1.1.1970
00:00 _UTC_ vergangenen Sekunden, während der letzte von dir aufgerufene
Befehl diese zu dem 1.1.1970 00:00 _lokaler_ Zeit hinzufügt. Und in
Deutschland ist damals wie heute nun mal eine Stunde früher Mitternacht.

Um die Zeit wieder zurück zu bekommen, musst du stattdessen

$ date -d @"$seconds"

aufrufen, dann klappt es wie gewünscht. Das hat mit der Sommerzeit gar
nichts zu tun, wenn du etwa mit

$ time="2009-02-12 20:25:16"

startest, ist das gleiche Phänomen zu beobachten.

Sven



Reply to: