Unix Timestamp Code

Siehe auch:Excel-Datumswert
Herkunft / Verwendung:Der Unix-Timestamp (oder auch Unixzeit) ist eine Art der Zeitmessung auf Unix-Betriebssystemen. Sie misst die seit dem 01. Januar 1970, 00:00 Uhr UTC (GMT+0000) vergangenen Sekunden.

Den 1. Januar 1970 nahm man in der Annahme, dass die Zeit ja nicht rückwärts laufen kann und eigentlich nur zur Verwendung als Datei-Datumswerte benutzt wird. Da es vor 1970 noch kein Unix-System und damit keine Dateien gab, stellte das kein Problem dar.

Trotzdem dachte man sich wohl, dass es nicht schlecht wäre, die Speicherung von Datumswerten vor dem 1. Januar möglich zu machen, etwa zur Speicherung der Geburtsdaten der Mitarbeiter. Man entschied sich deswegen für ein vorzeichenbehafteten Long-Wert mit 4 Byte Speicherplatz.

Vor 1975 wurden sogar Hundertstelsekunden gespeichert, doch bald merkte man, dass der Speicher (4 Bytes / 32-Bit-Long) schnell zu klein sein würde, um einen Überlauf zu vermeiden, was nicht eindeutige Datumswerte zur Folge hatte.

Also ging man dazu über, nur noch ganze Sekunden zu speichern. Aber auch das birgt die Gefahr eines Überlaufs, wenn dieser auch, in damaligen Maßstäben in weiter Ferne lag. Der 32-Bit-Long-Wert kann Werte von Minus 231 bis Plus 231-1 aufnehmen, also von -2'147'483'648 bis +2'147'483'647, also etwa 68 Jahre in Vergangenheit und Zukunft reichend, gemessen am Epoch-Datum des 1. Januar 1970. Das reicht zurück bis zum 13. Dezember 1901 20:45:52, genug für die Mitarbeiter-Geburtsdaten bis hin zum 19. Januar 2038 03:14:07, was weit weit in der Zukunft lag - da würde man sicher ganz neue Computer haben mit ganz anderen Betriebssystemen.

Doch Unix hält sich wacker, und es ist nicht abzusehen, warum es nicht auch noch am 20. Januar 2038 benutzt werden sollte. Alle Datumswerte danach würden durch den Überlauf allerdings aussehen, als seien sie von 1970 und schon 68 Jahre alt. Dieses Problem wird "Jahr-2038-Problem" genannt. Aber wie auch das über-hypte "Jahr-2000-Problem" werden hier wohl weder Fahrstühle steckenbleiben noch Kraftwerke explodieren. Neuere Unix-Systeme verwenden in den 64-Bit-Varianten bereits zur Speicherung vorzeichenbehaftete 64 Bit-Zahlen, was Raum für 292 Milliarden Jahre gibt. Das sollte bis zum nächsten Urknall reichen :)

Der Unix-Timestamp ist immer bezogen auf UTC (Coordinated Universal Time, koordinierte Weltzeit) also bezogen auf den Standort Greenwich im Vereinigten Königreich von Großbritannien. Die in Deutschland geltende Winterzeit (MEZ, mitteleuropäische Zeit) weicht um eine Stunde davon ab (GMT+0100) und die Sommerzeit (MESZ, mitteleuropäische Sommerzeit) um zwei Stunden (GMT+0200). Gerade bei der Sommerzeit ist dies logisch korrekt, denn diese Sekunden sind ja gar nicht vergangen, sondern es wurde nur der Zeiger auf der Uhr um 3600 Sekunden vorgestellt.

Mit dem Unix-Timestamp lässt es sich viel einfacher rechnen als mit normalen Datumsangaben. So ganz etwa die Werte in einer Datenbanken viel schneller sortieren, wenn man nur herausfinden muss, ob ein Zahlenwert größer oder kleiner ist, als umständlich Jahre, Monate, Tage, Stunden, Minuten und Sekunden miteinander zu vergleichen. Auch kann man Zeitdifferenzen sehr viel einfacher berechnen: man muss einfach den einen Timestamp vom anderen abziehen. Die erhaltenen Sekunden kann man einfach in Tage, Stunden oder Minuten umrechnen.

Beispiel

Datum/Zeit:23.02.2021 15:00:00
Unix-Timestamp:Datum wurde interpretiert als: 23.02.2021 15:00:00 UTC (GMT+0000)
Das korrespondierende UnixTimeStamp ist: 1614092400

Code / Chiffre online dekodieren / entschlüsseln bzw. kodieren / verschlüsseln (Decoder / Encoder / Solver-Tool)

Lassen Sie die Eingabe bei der Konvertterung zu einem Unix-Timestamp frei, um die aktuelle Zeit des Servers zu verwenden.