UNIX Időbélyeg Konvertáló – Online Átalakító és Tudnivalók

Jelenlegi UNIX időbélyeg

Másodpercek
Milliszekundumok

Időbélyeg → Dátum és idő


Dátum és idő → Időbélyeg

UNIX Időbélyeg Konvertáló (online UNIX idő átalakító)

Ez a UNIX időbélyeg konvertáló lehetővé teszi a UNIX idő (epoch time / POSIX time) gyors átalakítását dátummá és idővé, és fordítva. Támogatja az időbélyegeket másodpercben és milliszekundumban egyaránt, megjeleníti a helyi időt, az UTC-t és az ISO 8601 formátumot, az eredmények pedig egy kattintással másolhatók.


Mi az a UNIX időbélyeg (epoch time / POSIX time)?

A UNIX időbélyeg egy olyan szám, amely az időt 1970. január 1. 00:00:00 UTC óta eltelt másodpercek számaként fejezi ki (az ún. UNIX epoch). A gyakorlatban ez az egyik leggyakrabban használt formátum dátum és idő tárolására és átvitelére rendszerekben, adatbázisokban, API-kban és naplózásban.

Példa: A 1700000000 dátum 2023. november 14. 22:13:20 UTC-nek felel meg.

Miért pont 1970. január 1.?

Az epoch kezdetét (1970-01-01) a UNIX tervezésekor választották gyakorlati referenciapontként: közel áll a rendszer létrehozásának idejéhez, és lehetővé teszi az egyszerű időszámításokat.


UNIX időbélyeg másodpercben vs. milliszekundumban

A UNIX időbélyeg leggyakrabban két formában fordul elő:

Időbélyeg formátumPéldaTipikus felhasználás
Másodperc (s)1700000000adatbázisok, backend, API, fájlok
Milliszekundum (ms)1700000000000JavaScript (Date.now()), analitika, részletes naplók

Hogyan állapítható meg, melyikkel van dolga?

  • A mai dátumok esetében a másodperces időbélyeg általában 10 számjegyű.
  • A milliszekundumos időbélyeg általában 13 számjegyű, és körülbelül 1000-szer nagyobb.
  • Irányadóan: ha az érték > 10¹², akkor szinte biztosan milliszekundumról van szó.

A UNIX időbélyeg konvertáló használata

1) Időbélyeg → Dátum és idő

  1. Írja be az UNIX időbélyeget a mezőbe, vagy kattintson a Most gombra (aktuális UNIX idő).
  2. Ha az időbélyeg milliszekundumban van, aktiválja a Milliszekundumok használata opciót.
  3. Kattintson az Átalakítás gombra (vagy nyomja meg az Entert).
  4. Megjelenik az átalakítás helyi időre, UTC-re és ISO 8601 formátumba.
  5. Az eredményre kattintva kimásolhatja a vágólapra.

2) Dátum és idő → Időbélyeg

  1. Válassza ki a dátumot és időt az űrlapon.
  2. Kattintson az Átalakítás gombra.
  3. Az eredményt másodperces és milliszekundumos időbélyegként kapja meg.

Hol használják leggyakrabban a UNIX időbélyeget?

A UNIX idővel gyakorlatilag mindenhol találkozhat, ahol idővel dolgoznak az IT-ban:

  • Adatbázisok – idők tárolása és összehasonlítása MySQL-ben, PostgreSQL-ben, SQLite-ban stb.
  • API-k – REST/GraphQL gyakran időbélyegként adja vissza az időt (egyszerű szerializálás).
  • Naplók és monitorozás – események pontos időbeli rendezése.
  • Git – a commitok időadatokat tartalmaznak.
  • Fájlrendszerek – idők, mint mtime/ctime/atime (utolsó módosítás stb.).
  • JWT – az iat (issued at) és exp (expires) állítások tipikusan epoch másodpercekben vannak megadva.
  • Linux/Unix shell – a date +%s visszaadja az aktuális időbélyeget.
  • JavaScript – a Date.now() az időt milliszekundumban adja vissza.

Praktikus példák UNIX idő átalakítására

JavaScript (időbélyeg ↔ dátum)

// Aktuális UNIX időbélyeg másodpercben
const tsSeconds = Math.floor(Date.now() / 1000);

// Aktuális időbélyeg milliszekundumban
const tsMs = Date.now();

// Időbélyeg (s) -> dátum
const dateFromSeconds = new Date(1700000000 * 1000);
console.log(dateFromSeconds.toISOString());

// Dátum -> időbélyeg (s)
const ts = Math.floor(new Date("2024-01-01T00:00:00Z").getTime() / 1000);
console.log(ts);

Python (időbélyeg ↔ datetime)

import time
from datetime import datetime, timezone

# Aktuális időbélyeg másodpercben
ts = int(time.time())

# Időbélyeg -> datetime (UTC)
dt_utc = datetime.fromtimestamp(1700000000, tz=timezone.utc)

# Dátum -> időbélyeg
ts2 = int(datetime(2024, 1, 1, tzinfo=timezone.utc).timestamp())

SQL (MySQL)

-- Aktuális UNIX időbélyeg (s)
SELECT UNIX_TIMESTAMP();

-- Időbélyeg -> dátum
SELECT FROM_UNIXTIME(1700000000);

-- Dátum -> időbélyeg
SELECT UNIX_TIMESTAMP('2024-01-01 00:00:00');

Időzónák: UTC, helyi idő és ISO 8601

A UNIX időbélyeg mindig UTC-ben van – nem tartalmaz időzóna vagy nyári időszámítás információt. A helyi időre való átalakítás a böngésző, szerver vagy a használt könyvtár beállításaitól függ.

Ismerendő fogalmak:

  • UTC – globális szabvány nyári/téli időszámítás nélkül.
  • GMT – hétköznapi használatra gyakorlatilag megegyezik az UTC-vel.
  • Eltolás (Offset) – eltolás az UTC-hez képest (pl. Prága UTC+1 télen, UTC+2 nyáron).

A UNIX időbélyeg korlátai és a 2038-as év problémája

A 2038-as év problémája (Year 2038 Problem)

Néhány 32 bites rendszeren az időbélyeg int32-ként van tárolva, maximálisan 2 147 483 647 értékkel, ami 2038. január 19. 03:14:07 UTC-nek felel meg. Túllépés esetén túlcsordulás és hibás időzítés léphet fel. A modern 64 bites rendszerek általában nem rendelkeznek ezzel a problémával.

A 64 bites UNIX idő tartománya

A 64 bites értékek rendkívül széles időszakot fednek le (gyakorlatilag „örökké”). A negatív értékek az 1970. január 1. előtti dátumot jelentik.


GYIK – Gyakran Ismételt Kérdések a UNIX időbélyeggel kapcsolatban

Az UNIX időbélyeg UTC-ben vagy helyi időben van megadva? Az UNIX időbélyeg mindig UTC-ben van. A helyi idő csak az időzóna szerinti átalakításkor jön létre. A konvertáló ezért általában az UTC-t és a helyi időt is megjeleníti.
Hogyan tudom megkülönböztetni, hogy az időbélyeg másodpercben vagy milliszekundumban van-e? A mai dátumok esetében a másodperces időbélyeg általában 10 számjegyű. A milliszekundumos időbélyeg általában 13 számjegyű, és körülbelül 1000-szer nagyobb. Irányadóan: ha az érték > 10¹², akkor általában milliszekundumról van szó.
Mit jelent a negatív UNIX időbélyeg? A negatív időbélyeg az 1970. január 1. előtti dátumot jelöli. Például a -1 a 1969. december 31. 23:59:59 UTC időpontnak felel meg.
Hogyan alakítható át a UNIX időbélyeg SQL-ben? MySQL-ben a FROM_UNIXTIME(timestamp) függvényt használja, és visszafelé a UNIX_TIMESTAMP(dátum) függvényt. PostgreSQL-ben tipikusan a TO_TIMESTAMP(timestamp) és EXTRACT(EPOCH FROM dátum) függvényeket.
Miért 1970. január 1-jén kezdődik a UNIX epoch? Ez egy történelmileg kiválasztott referencia pont a UNIX korai időszakából: egyszerű, praktikus és közel áll a rendszer fejlesztésének idejéhez.