Unix Zeitstempel-Generator

Wählen Sie ein Datum und eine Uhrzeit, um einen Unix-Zeitstempel, Millisekunden-Zeitstempel und ISO-8601-String zu erzeugen.

Unix-Zeitstempel (Sekunden)
Millisekunden
ISO 8601
Menschenlesbar (UTC)

Funktionsweise

  1. Datum in Zeitstempel konvertieren: Geben Sie ein beliebiges Datum und eine Uhrzeit mit dem Datums-Picker ein, dann klicken Sie auf Konvertieren, um den Unix-Zeitstempel in Sekunden und Millisekunden zu erhalten.
  2. Zeitstempel in Datum konvertieren: Fügen Sie einen Unix-Zeitstempel (Sekunden oder Millisekunden) ein, um ihn zurück in ein menschenlesbares Datum und eine Uhrzeit zu konvertieren.
  3. Aktuellen Zeitstempel erhalten: Klicken Sie auf „Jetzt", um sofort den aktuellen Unix-Zeitstempel für den gegenwärtigen Moment zu erhalten.

Warum den Unix-Zeitstempel-Generator verwenden?

Unix-Zeitstempel sind die universelle Sprache der Zeit in der Informatik, eine einzige Ganzzahl, die Sekunden seit dem 1. Januar 1970 (UTC) repräsentiert. Sie treiben Datenbanken, APIs, Log-Dateien, Authentifizierungs-Tokens und Event-Planung an. Die manuelle Konvertierung zwischen Unix-Zeitstempeln und menschenlesbaren Daten beinhaltet komplexe Zeitzonen-Arithmetik, die leicht falsch zu machen ist. Dieses Tool behandelt die Konvertierung in beide Richtungen korrekt, spart Zeit und verhindert Zeitzonen-Bugs.

Funktionen

Häufig gestellte Fragen

Was ist ein Unix-Zeitstempel?

Ein Unix-Zeitstempel ist die Anzahl der Sekunden, die seit der Unix-Epoche verstrichen sind, Mitternacht UTC am 1. Januar 1970. Es ist eine zeitzonenunabhängige Darstellung eines Zeitpunkts, was es zum bevorzugten Format für die Speicherung und den Vergleich von Zeiten in Datenbanken und APIs macht.

Warum verwendet JavaScript Millisekunden?

JavaScripts Date.now() und new Date().getTime() liefern Millisekunden seit der Epoche (eine 13-stellige Zahl), während Unix-Tools und die meisten Datenbanken Sekunden verwenden (eine 10-stellige Zahl). Prüfen Sie, ob Ihr Zeitstempel 10 oder 13 Stellen hat, um zu bestimmen, welches Format Sie haben.

Wie konvertiere ich einen Zeitstempel in meine Lokalzeit?

Fügen Sie den Zeitstempel ein, und das Tool konvertiert ihn automatisch in die lokale Zeitzone Ihres Browsers. Die Anzeige zeigt sowohl Lokalzeit als auch UTC, sodass Sie über Zeitzonen hinweg sicher arbeiten können.

Woher Unix-Zeit kommt

Unix-Zeit wurde von Ken Thompson und Dennis Ritchie in Unix First Edition (November 1971) definiert. Anfänglich zählte der Kernel 60stel-Sekunden seit dem 1971-01-01 in einem 32-Bit-Feld, das nach 2 Jahren 9 Monaten überlief. Mit Unix Sixth Edition (1975) wurde die Zählung auf Sekunden seit 1970-01-01 00:00:00 UTC geändert, die Epoche, die jedes Unix-ähnliche System heute noch verwendet. Die Wahl war willkürlich, die Ingenieure brauchten ein rundes Datum nahe der Ära, in der sie arbeiteten. POSIX.1 (1988) kodifizierte die Definition als offiziellen Standard, und POSIX.1-2017 (IEEE Std 1003.1-2017), die aktuelle Version, definiert time_t immer noch als Anzahl der Sekunden seit der Epoche, mit der Einschränkung, dass POSIX-Zeit so tut, als ob Schaltsekunden nicht existieren. ISO 8601 (1988, derzeit 2019) standardisierte das lesbare Format 2026-05-13T14:30:00Z, und RFC 3339 (Juli 2002) verengte es zu einem eindeutigen Internet-Datum-Zeit-Profil. JavaScripts Date.now() gibt Millisekunden seit der Epoche zurück, weil die Spec 1995 geschrieben wurde, als Sub-Sekunden-Präzision bereits gefragt war; die meisten Datenbanken und Unix-Utilities verwenden immer noch ganze Sekunden.

Das Jahr-2038-Problem (und warum es jetzt wichtig ist)

Ein vorzeichenbehaftetes 32-Bit-time_t kann höchstens 2.147.483.647 Sekunden darstellen, die am Dienstag, 19. Januar 2038, 03:14:07 UTC eintreffen. Eine Sekunde später läuft der Zähler auf −2.147.483.648 um, was die meiste Software als 13. Dezember 1901 interpretiert. Es ist die gleiche Klasse von Bug wie Y2K, aber verursacht durch die Ganzzahl-Breite, nicht das Datumsformat. Die Lösung ist, 64-Bit-time_t zu verwenden (was den Überlauf auf etwa das Jahr 292 Milliarden schiebt). Die meisten 64-Bit-Linux-Systeme verwenden bereits standardmäßig 64-Bit-time_t; Linux 5.6 (März 2020) machte 64-Bit-time_t auch auf 32-Bit-Architekturen verfügbar. Das verbleibende Risiko lebt in eingebetteten Systemen, alten Binärdateiformaten und 32-Bit-Netzwerkprotokollen. Das Network Time Protocol (NTP) läuft bereits 2036 um, weil es einen vorzeichenlosen 32-Bit-Zähler seit 1900 verwendet, NTPv4 fügt eine Ära-Nummer hinzu, um es zu erweitern. Wenn du Software ausliefst, die Daten verarbeitet, prüfe deinen Stack vor 2038, besonders SQL-Spalten vom Typ INT(11) oder älteren C-Code mit long-Zeitfeldern.

Die Timestamp-Formate, denen du begegnen wirst

Wann dieses Werkzeug seinen Wert beweist

Fehler, die Teams Stunden kosten

Weitere häufig gestellte Fragen

Warum wurde 1970-01-01 als Epoche gewählt?

Bequemlichkeit. Frühe Unix-Versionen in den 70er Jahren wollten eine Epoche, die innerhalb einer angemessenen Arbeitslebensdauer nicht überlaufen würde. 1970-01-01 war ein rundes Datum nahe der Entwicklungs-Ära, und ein 32-Bit-Sekundenzähler von dort aus erreicht bequem 2038. Die Wahl ist nun in POSIX.1-2017 §4.16 eingraviert und ist eine der stabilsten plattformübergreifenden Vereinbarungen in Software. Es gibt keine inhärente Bedeutung für das Datum, kein historisches Ereignis, keinen astronomischen Anker, nur einen willkürlichen Anker, dem alle zugestimmt haben.

Was ist der Unterschied zwischen UTC, GMT und Zulu-Zeit?

Für Software-Zwecke beziehen sie sich auf die gleiche Wanduhrzeit. UTC (Koordinierte Weltzeit) ist der moderne Standard, definiert durch Atomuhren und das BIPM. GMT (Greenwich Mean Time) ist der ältere britische astronomische Standard, der vor der Atomzeit die de-facto-Weltreferenz war. Zulu-Zeit ist der NATO/militärische Bezeichner für UTC, geschrieben als das Z-Suffix in ISO 8601 (2026-05-13T14:30:00Z). UTC und GMT können bis zu 0,9 Sekunden abweichen, weil UTC gesteuert wird, um nahe an UT1 (mittlerer Sonnenzeit) über Schaltsekunden zu bleiben, aber keine Anwendung, die UT1 nicht direkt verwendet, wird es bemerken.

Warum wird manchmal 1970 angezeigt, wenn ich etwas anderes erwartet hatte?

Zwei häufige Ursachen. Erstens, der Timestamp ist in Millisekunden, wurde aber an eine Funktion übergeben, die Sekunden erwartet, oder umgekehrt, wodurch ein Datum um einen Faktor 1000 versetzt wird. Zweitens, der Wert ist 0 oder NaN, was die meisten Datumsbibliotheken als 1970-01-01T00:00:00Z rendern. Untersuche die rohe Ganzzahlbreite: 10 Ziffern ist Sekunden, 13 ist Millisekunden, 16 ist Mikrosekunden, 19 ist Nanosekunden.

Wird dieses Werkzeug negative Timestamps für Daten vor 1970 behandeln?

Ja. new Date(-86400000) gibt 1969-12-31T00:00:00Z zurück. JavaScripts Date kann jeden Moment von −271821-04-20 bis +275760-09-13 darstellen, was etwa ±100 Millionen Tage von der Epoche entspricht. Außerhalb dieses Bereichs gibt die API Invalid Date zurück. Bei historischen Daten beachte auch den Julianisch-Gregorianischen Übergang (1582 in katholischen Ländern, 1752 in Großbritannien, erst 1923 in Griechenland), bei dem Kalenderdaten um 10 bis 13 Tage sprangen; Datumsbibliotheken variieren darin, wie sie damit umgehen.

Werden meine Timestamp-Daten irgendwohin gesendet?

Nein. Alle Konvertierungen laufen in JavaScript in deinem Browser. Die Seite POSTet niemals irgendeinen Wert, den du eingibst. Öffne den Netzwerk-Tab in DevTools und konvertiere einen Timestamp, du wirst null ausgehende Anfragen während der Konvertierung sehen. Sicher für Tokens mit Timestamp-Claims, interne Log-Zeilen oder alles andere, was du nicht in einen gehosteten Service einfügen würdest.

Verwandte Tools

Kostenloser Unix-Zeitstempel-Konverter Datumsrechner Kostenloser Dauer-Rechner Kostenloser Countdown-Timer