UNIX Időbélyeg Konvertáló – Online Átalakító és Tudnivalók
Jelenlegi UNIX időbélyeg
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átum | Példa | Tipikus felhasználás |
|---|---|---|
| Másodperc (s) | 1700000000 | adatbázisok, backend, API, fájlok |
| Milliszekundum (ms) | 1700000000000 | JavaScript (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ő
- Írja be az UNIX időbélyeget a mezőbe, vagy kattintson a Most gombra (aktuális UNIX idő).
- Ha az időbélyeg milliszekundumban van, aktiválja a Milliszekundumok használata opciót.
- Kattintson az Átalakítás gombra (vagy nyomja meg az Entert).
- Megjelenik az átalakítás helyi időre, UTC-re és ISO 8601 formátumba.
- Az eredményre kattintva kimásolhatja a vágólapra.
2) Dátum és idő → Időbélyeg
- Válassza ki a dátumot és időt az űrlapon.
- Kattintson az Átalakítás gombra.
- 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) ésexp(expires) állítások tipikusan epoch másodpercekben vannak megadva. - Linux/Unix shell – a
date +%svisszaadja 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 aFROM_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.