UNIX ajatemplituse teisendaja – tasuta online konverter
Aktuaalne UNIX ajatemplitus
Ajatemplitus → Kuupäev ja aeg
Kuupäev ja aeg → Ajatemplitus
UNIX ajatemplituse teisendaja (online konverter)
See UNIX ajatemplituse teisendaja võimaldab teil kiiresti teisendada UNIX-aega (epoch time / POSIX time) kuupäevaks ja ajaks ning vastupidi. See toetab sekundites ja millisekundites ajatemplitust, näitab kohalikku aega, UTC-d ja ISO 8601 ning tulemusi saab ühe klõpsuga kopeerida.
Mis on UNIX ajatemplitus (epoch time / POSIX time)?
UNIX ajatemplitus on number, mis väljendab aega kui sekundite arvu alates 1. jaanuarist 1970 00:00:00 UTC (nn UNIX epoch). Praktikas on see üks enimkasutatud formaate kuupäevade ja aegade salvestamiseks ja edastamiseks süsteemides, andmebaasides, API-des ja logimisel.
Näide: 1700000000 vastab kuupäevale 14. november 2023 22:13:20 UTC.
Miks just 1. jaanuar 1970?
Epochi algus (1970-01-01) valiti UNIXi loomisel praktilise võrdluspunktina: see on süsteemi loomisajale lähedal ja võimaldab lihtsaid ajaarvutusi.
UNIX ajatemplitus sekundites vs. millisekundites
UNIX ajatemplitus esineb kõige sagedamini kahes vormis:
| Ajatemplituse formaat | Näide | Tüüpiline kasutus |
|---|---|---|
| Sekundid (s) | 1700000000 | andmebaasid, backend, API, failid |
| Millisekundid (ms) | 1700000000000 | JavaScript (Date.now()), analüütika, detailne logi |
Kuidas teada saada, mis teil on?
- Sekunditel on „tänaste“ kuupäevade puhul tavaliselt 10 numbrit.
- Millisekunditel on tavaliselt 13 numbrit ja need on umbes 1000 korda suuremad.
- Ligikaudselt: kui väärtus on > 10¹², on tegemist peaaegu kindlasti millisekunditega.
Kuidas kasutada UNIX ajatemplituse teisendajat
1) Ajatemplitus → Kuupäev ja aeg
- Sisestage UNIX ajatemplitus väljale või klõpsake Praegu (aktuaalne UNIX aeg).
- Kui ajatemplitus on millisekundites, aktiveerige valik Millisekundid.
- Klõpsake Teisenda (või vajutage Enter).
- Kuvatakse teisendus kohalikuks ajaks, UTC-ks ja ISO 8601 formaati.
- Tulemusele klõpsates kopeerite selle lõikepuhvrisse.
2) Kuupäev ja aeg → Ajatemplitus
- Valige vormis kuupäev ja aeg.
- Klõpsake Teisenda.
- Tulemuseks saate ajatemplituse sekundites ja millisekundites.
Kus UNIX ajatemplitust kõige sagedamini kasutatakse?
UNIX-aega kohtate praktiliselt kõikjal, kus IT-s ajaga töötatakse:
- Andmebaasid – aegade salvestamine ja võrdlemine MySQL-is, PostgreSQL-is, SQLite-is jne.
- API-d – REST/GraphQL tagastab sageli aja ajatemplitusena (lihtne serialiseerimine).
- Logid ja monitooring – sündmuste täpne ajaline järjestamine.
- Git – commitid sisaldavad ajaandmeid.
- Failisüsteemid – ajad nagu mtime/ctime/atime (viimane muudatus jne).
- JWT –
iat(issued at) jaexp(expires) väited on tavaliselt epoch sekundites. - Linux/Unix shell –
date +%stagastab aktuaalse ajatemplituse. - JavaScript –
Date.now()tagastab aja millisekundites.
Praktilised näited UNIX aja teisendamisest
JavaScript (ajatemplitus ↔ kuupäev)
// Aktuaalne UNIX ajatemplitus sekundites
const tsSeconds = Math.floor(Date.now() / 1000);
// Aktuaalne ajatemplitus millisekundites
const tsMs = Date.now();
// Ajatemplitus (s) -> kuupäev
const dateFromSeconds = new Date(1700000000 * 1000);
console.log(dateFromSeconds.toISOString());
// Kuupäev -> ajatemplitus (s)
const ts = Math.floor(new Date("2024-01-01T00:00:00Z").getTime() / 1000);
console.log(ts);
Python (ajatemplitus ↔ datetime)
import time
from datetime import datetime, timezone
# Aktuaalne ajatemplitus sekundites
ts = int(time.time())
# Ajatemplitus -> datetime (UTC)
dt_utc = datetime.fromtimestamp(1700000000, tz=timezone.utc)
# Kuupäev -> ajatemplitus
ts2 = int(datetime(2024, 1, 1, tzinfo=timezone.utc).timestamp())
SQL (MySQL)
-- Aktuaalne UNIX ajatemplitus (s)
SELECT UNIX_TIMESTAMP();
-- Ajatemplitus -> kuupäev
SELECT FROM_UNIXTIME(1700000000);
-- Kuupäev -> ajatemplitus
SELECT UNIX_TIMESTAMP('2024-01-01 00:00:00');
Ajavööndid: UTC, kohalik aeg ja ISO 8601
UNIX ajatemplitus on alati UTC-s – see ei sisalda infot ajavööndi ega suveaja kohta. Teisendamine kohalikuks ajaks sõltub brauseri, serveri või kasutatava teegi seadetest.
Mõisted, mida on hea teada:
- UTC – globaalne standard ilma suve-/talveajata.
- GMT – praktiliselt sama, mis UTC tavakasutuses.
- Nihe (Offset) – nihe UTC suhtes (nt Tallinn UTC+2 talvel, UTC+3 suvel).
UNIX ajatemplituse piirangud ja aasta 2038 probleem
Aasta 2038 probleem (Year 2038 Problem)
Mõnedes 32-bitistes süsteemides salvestatakse ajatemplitus int32 formaadis maksimaalse väärtusega 2 147 483 647, mis vastab 19. jaanuarile 2038 03:14:07 UTC. Ületamisel võib tekkida ületäitumine ja vale aeg. Kaasaegsetel 64-bitistes süsteemidel seda probleemi tavaliselt ei ole.
64-bitise UNIX aja ulatus
64-bitised väärtused hõlmavad äärmiselt laia ajavahemikku (praktikas „igavesti“). Negatiivsed väärtused tähistavad kuupäeva enne 1. jaanuari 1970.
KKK – korduma kippuvad küsimused UNIX ajatemplituse kohta
Kas UNIX ajatemplitus on UTC-s või kohalikus ajas?
UNIX ajatemplitus on alati UTC-s. Kohalik aeg tekib alles teisendamise käigus vastavalt ajavööndile. Seepärast kuvab teisendaja tavaliselt nii UTC kui ka kohaliku aja.Kuidas ma tean, kas ajatemplitus on sekundites või millisekundites?
Praegusel ajal on sekundites ajatemplitusel tavaliselt 10 numbrit. Millisekundites ajatemplitusel on tavaliselt 13 numbrit ja see on umbes 1000 korda suurem. Ligikaudselt: väärtus > 10¹² on tavaliselt millisekundid.Mida tähendab negatiivne UNIX ajatemplitus?
Negatiivne ajatemplitus tähistab kuupäeva enne 1. jaanuari 1970. Näiteks-1 vastab 31. detsembrile 1969 23:59:59 UTC.
Kuidas teisendada UNIX ajatemplitust SQL-is?
MySQL-is kasutateFROM_UNIXTIME(timestamp) ja tagasi UNIX_TIMESTAMP(kuupäev). PostgreSQL-is on see tavaliselt TO_TIMESTAMP(timestamp) ja EXTRACT(EPOCH FROM kuupäev).