# UNIX-aikaleiman muunnin

> Muunna UNIX-aikaleima päivämääräksi ja takaisin. Näyttää nykyisen aikaleiman, paikallisen ajan, UTC:n ja suhteellisen ajan reaaliajassa – täysin ilmainen.

URL: https://acrafto.com/fi/unix-aikaleiman-muunnin/

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

## UNIX-aikaleiman muunnin (online-UNIX-aikamuunnin)

Tämä **UNIX-aikaleiman muunnin** antaa sinun muuntaa nopeasti **UNIX-ajan (epoch time / POSIX time)** **päivämääräksi ja ajaksi** ja toisinpäin. Se tukee **aikaleimoja sekunneissa ja millisekunnneissa**, näyttää **paikallisen ajan**, **UTC:n** sekä **ISO 8601** -muodon, ja tulokset voidaan **kopioida** yhdellä napsautuksella.

---

## Mikä on UNIX-aikaleima (epoch time / POSIX time)?

**UNIX-aikaleima** on luku, joka ilmaisee ajan **sekuntien määränä tammikuun 1. päivästä 1970 klo 00:00:00 UTC alkaen** (ns. **UNIX-epochi**). Käytännössä se on yksi yleisimmin käytetyistä muodoista päivämäärän ja ajan tallentamiseen ja siirtämiseen järjestelmissä, tietokannoissa, API:ssa ja lokitiedostoissa.

**Esimerkki:** `1700000000` vastaa päivämäärää **14\. marraskuuta 2023 22:13:20 UTC**.

### Miksi juuri 1.1.1970?

Epochin alku (1970-01-01) valittiin UNIXin suunnittelussa käytännölliseksi vertailukohdaksi: se on lähellä järjestelmän perustamisaikaa ja mahdollistaa yksinkertaiset aikaliitännäiset laskutoimitukset.

---

## UNIX-aikaleima sekunneissa vs. millisekunnneissa

UNIX-aikaleima esiintyy yleisimmin kahdessa muodossa:

| Aikaleiman muoto | Esimerkki | Tyypillinen käyttö |
| --- | ---: | --- |
| **Sekunnit (s)** | `1700000000` | tietokannat, taustajärjestelmät, API:t, tiedostot |
| **Millisekunnit (ms)** | `1700000000000` | JavaScript (`Date.now()`), analytiikka, yksityiskohtaiset lokit |

**Miten tunnistaa oikean muodon?**

- **Sekunneissa** olevissa nykyajan tiedoissa on yleensä **10 numeroa**.
- **Millisekunnneissa** olevissa on yleensä **13 numeroa** ja ne ovat noin **1000 kertaa suurempia**.
- Suuntaa-antava: jos arvo on **\> 10¹²**, kyseessä on lähes varmasti **millisekunnit**.

---

## Miten UNIX-aikaleiman muunninta käytetään

### 1) Aikaleima → Päivämäärä ja aika

1. Syötä **UNIX-aikaleima** kenttään tai napsauta **Nyt** (nykyinen UNIX-aika).
2. Jos aikaleima on **millisekunnneissa**, aktivoi valinta **Millisekunnit**.
3. Napsauta **Muunna** (tai paina Enter).
4. Näet muunnoksen **paikalliseen aikaan**, **UTC:hen** ja **ISO 8601** -muotoon.
5. Napsauttamalla tulosta **kopioit sen leikepöydälle**.

### 2) Päivämäärä ja aika → Aikaleima

1. Valitse **päivämäärä ja aika** lomakkeesta.
2. Napsauta **Muunna**.
3. Saat tuloksen **aikaleimana sekunneissa ja millisekunnneissa**.

---

## Missä UNIX-aikaleimaa käytetään yleisimmin?

UNIX-aikaa tapaa käytännöllisesti katsoen kaikkialla, missä IT:ssä käsitellään aikaa:

- **Tietokannat** – aikojen tallentaminen ja vertailu MySQL:ssä, PostgreSQL:ssä, SQLite:ssä jne.
- **API:t** – REST/GraphQL palauttaa usein ajan aikaleimana (helppo serialisointi).
- **Lokit ja valvonta** – tapahtumien tarkka järjestely ajan mukaan.
- **Git** – commitit sisältävät aikatiedot.
- **Tiedostojärjestelmät** – ajat kuten mtime/ctime/atime (viimeisin muokkaus jne.).
- **JWT** – `iat` (issued at) ja `exp` (expires) väitteet ovat tyypillisesti epoch-sekunneissa.
- **Linux/Unix-kuori** – `date +%s` palauttaa nykyisen aikaleiman.
- **JavaScript** – `Date.now()` palauttaa ajan **millisekunnneissa**.

---

## Käytännön esimerkkejä UNIX-ajan muunnoksesta

### JavaScript (aikaleima ↔ päivämäärä)

```
// Nykyinen UNIX-aikaleima sekunteina
const tsSeconds = Math.floor(Date.now() / 1000);

// Nykyinen aikaleima millisekunteina
const tsMs = Date.now();

// Aikaleima (s) -> päivämäärä
const dateFromSeconds = new Date(1700000000 * 1000);
console.log(dateFromSeconds.toISOString());

// Päivämäärä -> aikaleima (s)
const ts = Math.floor(new Date("2024-01-01T00:00:00Z").getTime() / 1000);
console.log(ts);
```

### Python (aikaleima ↔ datetime)

```
import time
from datetime import datetime, timezone

# Nykyinen aikaleima sekunteina
ts = int(time.time())

# Aikaleima -> datetime (UTC)
dt_utc = datetime.fromtimestamp(1700000000, tz=timezone.utc)

# Päivämäärä -> aikaleima
ts2 = int(datetime(2024, 1, 1, tzinfo=timezone.utc).timestamp())
```

### SQL (MySQL)

```
-- Nykyinen UNIX-aikaleima (s)
SELECT UNIX_TIMESTAMP();

-- Aikaleima -> päivämäärä
SELECT FROM_UNIXTIME(1700000000);

-- Päivämäärä -> aikaleima
SELECT UNIX_TIMESTAMP('2024-01-01 00:00:00');
```

---

## Aikavyöhykkeet: UTC, paikallinen aika ja ISO 8601

**UNIX-aikaleima on aina UTC-ajassa** – se ei sisällä tietoa aikavyöhykkeestä eikä kesäajasta. Muunnos paikalliseen aikaan riippuu selaimen, palvelimen tai käytetyn kirjaston asetuksista.

Termit, jotka on hyvä tietää:

- **UTC** – globaali standardi ilman kesä-/talviaikaa.
- **GMT** – käytännössä sama kuin UTC tavallisessa käytössä.
- **Offset** – siirtymä UTC:hen nähden (esim. Helsinki **UTC+2** talvella, **UTC+3** kesällä).

---

## UNIX-aikaleiman rajoitukset ja Vuoden 2038 ongelma

### Vuoden 2038 ongelma (Year 2038 Problem)

Joissakin **32-bittisissä järjestelmissä** aikaleima tallennetaan `int32`\-muodossa maksimiarvolla **2 147 483 647**, mikä vastaa **19\. tammikuuta 2038 klo 03:14:07 UTC**. Ylittämisen jälkeen voi tapahtua ylivuoto ja virheellinen aika. Nykyaikaisissa **64-bittisissä** järjestelmissä tätä ongelmaa ei tyypillisesti ole.

### 64-bittisen UNIX-ajan laajuus

64-bittiset arvot kattavat äärimmäisen laajan ajanjakson (käytännössä „ikuisesti“). Negatiiviset arvot tarkoittavat päivämäärää **ennen 1.1.1970**.

---

## FAQ – usein kysytyt kysymykset UNIX-aikaleimasta

### Onko UNIX-aikaleima UTC:ssä vai paikallisessa ajassa?

UNIX-aikaleima on aina **UTC-ajassa**. Paikallinen aika syntyy vasta muunnoksessa aikavyöhykkeen mukaan. Muunnin näyttää siksi yleensä sekä UTC- että paikallisen ajan.

### Miten tiedän, onko aikaleima sekunneissa vai millisekunnneissa?

Nykyajalle aikaleimassa on **sekunneissa** tyypillisesti **10 numeroa**. **Millisekunnneissa** siinä on yleensä **13 numeroa** ja se on noin **1000 kertaa suurempi**. Suuntaa-antava: arvo **\> 10¹²** on yleensä millisekunteja.

### Mitä negatiivinen UNIX-aikaleima tarkoittaa?

Negatiivinen aikaleima edustaa päivämäärää **ennen 1.1.1970**. Esimerkiksi `-1` vastaa **31.12.1969 23:59:59 UTC**.

### Miten UNIX-aikaleima muunnetaan SQL:ssä?

MySQL:ssä käytät `FROM_UNIXTIME(timestamp)` ja takaisin `UNIX_TIMESTAMP(päivämäärä)`. PostgreSQL:ssä se on tyypillisesti `TO_TIMESTAMP(timestamp)` ja `EXTRACT(EPOCH FROM päivämäärä)`.

### Miksi UNIX-epochi alkaa 1. tammikuuta 1970?

Se on historiallisesti valittu vertailukohta UNIXin alkuajoilta: yksinkertainen, käytännöllinen ja lähellä järjestelmän kehitysaikaa.

## Other languages

- Čeština (cs): [Unix timestamp převodník](https://acrafto.com/cs/unix-timestamp/) ([Markdown](https://acrafto.com/cs/unix-timestamp/index.md))
- Slovenčina (sk): [Unix timestamp konvertor](https://acrafto.com/sk/unix-timestamp-prevodnik/) ([Markdown](https://acrafto.com/sk/unix-timestamp-prevodnik/index.md))
- English (en): [UNIX Timestamp Converter](https://acrafto.com/en/unix-timestamp-converter/) ([Markdown](https://acrafto.com/en/unix-timestamp-converter/index.md))
- Deutsch (de): [Unix Timestamp umrechnen](https://acrafto.com/de/unix-timestamp-konverter/) ([Markdown](https://acrafto.com/de/unix-timestamp-konverter/index.md))
- Français (fr): [Convertisseur timestamp Unix](https://acrafto.com/fr/convertisseur-timestamp-unix/) ([Markdown](https://acrafto.com/fr/convertisseur-timestamp-unix/index.md))
- Español (es): [Convertidor de UNIX timestamp](https://acrafto.com/es/convertidor-timestamp-unix/) ([Markdown](https://acrafto.com/es/convertidor-timestamp-unix/index.md))
- Italiano (it): [Convertitore timestamp UNIX](https://acrafto.com/it/convertitore-timestamp-unix/) ([Markdown](https://acrafto.com/it/convertitore-timestamp-unix/index.md))
- Português (pt): [Conversor de timestamp Unix](https://acrafto.com/pt/conversor-timestamp-unix/) ([Markdown](https://acrafto.com/pt/conversor-timestamp-unix/index.md))
- Nederlands (nl): [Unix timestamp converter](https://acrafto.com/nl/unix-timestamp-converter/) ([Markdown](https://acrafto.com/nl/unix-timestamp-converter/index.md))
- Polski (pl): [Konwerter UNIX timestamp](https://acrafto.com/pl/konwerter-unix-timestamp/) ([Markdown](https://acrafto.com/pl/konwerter-unix-timestamp/index.md))
- Română (ro): [Convertor Unix timestamp](https://acrafto.com/ro/convertor-unix-timestamp/) ([Markdown](https://acrafto.com/ro/convertor-unix-timestamp/index.md))
- Magyar (hu): [UNIX időbélyeg konvertáló](https://acrafto.com/hu/unix-idobelyeg-atalakito/) ([Markdown](https://acrafto.com/hu/unix-idobelyeg-atalakito/index.md))
- Ελληνικά (el): [Μετατροπέας Unix timestamp](https://acrafto.com/el/unix-timestamp-converter/) ([Markdown](https://acrafto.com/el/unix-timestamp-converter/index.md))
- Български (bg): [Unix timestamp конвертор](https://acrafto.com/bg/unix-timestamp-konverter/) ([Markdown](https://acrafto.com/bg/unix-timestamp-konverter/index.md))
- Hrvatski (hr): [Unix timestamp konverter](https://acrafto.com/hr/unix-timestamp-konverter/) ([Markdown](https://acrafto.com/hr/unix-timestamp-konverter/index.md))
- Slovenščina (sl): [Pretvornik Unix timestamp](https://acrafto.com/sl/unix-timestamp-pretvornik/) ([Markdown](https://acrafto.com/sl/unix-timestamp-pretvornik/index.md))
- Eesti (et): [UNIX timestamp teisendaja](https://acrafto.com/et/unix-timestamp-teisendaja/) ([Markdown](https://acrafto.com/et/unix-timestamp-teisendaja/index.md))
- Latviešu (lv): [UNIX laika zīmogu pārveidotājs](https://acrafto.com/lv/unix-timestamp-konvertetajs/) ([Markdown](https://acrafto.com/lv/unix-timestamp-konvertetajs/index.md))
- Lietuvių (lt): [UNIX laiko žymės keitiklis](https://acrafto.com/lt/unix-laiko-zymes-keitiklis/) ([Markdown](https://acrafto.com/lt/unix-laiko-zymes-keitiklis/index.md))
- Svenska (sv): [Unix timestamp-omvandlare](https://acrafto.com/sv/unix-timestamp-omvandlare/) ([Markdown](https://acrafto.com/sv/unix-timestamp-omvandlare/index.md))
- Dansk (da): [UNIX timestamp konverter](https://acrafto.com/da/unix-timestamp-konverter/) ([Markdown](https://acrafto.com/da/unix-timestamp-konverter/index.md))
- Norsk (no): [Unix timestamp-konverterer](https://acrafto.com/no/unix-tidsstempel-konverterer/) ([Markdown](https://acrafto.com/no/unix-tidsstempel-konverterer/index.md))
- Українська (uk): [Конвертер Unix timestamp](https://acrafto.com/uk/konverter-unix-chasu/) ([Markdown](https://acrafto.com/uk/konverter-unix-chasu/index.md))
- Русский (ru): [Unix timestamp конвертер](https://acrafto.com/ru/unix-timestamp-konverter/) ([Markdown](https://acrafto.com/ru/unix-timestamp-konverter/index.md))
- Српски (sr): [UNIX timestamp konverter](https://acrafto.com/sr/unix-timestamp-konverter/) ([Markdown](https://acrafto.com/sr/unix-timestamp-konverter/index.md))
- Македонски (mk): [UNIX timestamp конвертор](https://acrafto.com/mk/unix-timestamp-konvertor/) ([Markdown](https://acrafto.com/mk/unix-timestamp-konvertor/index.md))
- Bosanski (bs): [Unix timestamp konverter](https://acrafto.com/bs/unix-timestamp-konverter/) ([Markdown](https://acrafto.com/bs/unix-timestamp-konverter/index.md))
- Shqip (sq): [Konvertues Unix timestamp](https://acrafto.com/sq/konvertues-timestamp-unix/) ([Markdown](https://acrafto.com/sq/konvertues-timestamp-unix/index.md))
- Türkçe (tr): [UNIX zaman damgası dönüştürücü](https://acrafto.com/tr/unix-zaman-damgasi-donusturucu/) ([Markdown](https://acrafto.com/tr/unix-zaman-damgasi-donusturucu/index.md))
- 日本語 (ja): [UNIXタイムスタンプ変換](https://acrafto.com/ja/unix-timestamp-converter/) ([Markdown](https://acrafto.com/ja/unix-timestamp-converter/index.md))
- 한국어 (ko): [유닉스 타임스탬프 변환기](https://acrafto.com/ko/unix-timestamp-converter/) ([Markdown](https://acrafto.com/ko/unix-timestamp-converter/index.md))
- العربية (ar): [محول Unix Timestamp](https://acrafto.com/ar/unix-timestamp-converter/) ([Markdown](https://acrafto.com/ar/unix-timestamp-converter/index.md))
- हिन्दी (hi): [UNIX टाइमस्टैम्प कनवर्टर](https://acrafto.com/hi/unix-timestamp-converter/) ([Markdown](https://acrafto.com/hi/unix-timestamp-converter/index.md))
- Bahasa Indonesia (id): [Konverter Unix timestamp](https://acrafto.com/id/konverter-timestamp-unix/) ([Markdown](https://acrafto.com/id/konverter-timestamp-unix/index.md))
- Tiếng Việt (vi): [Chuyển đổi Unix timestamp](https://acrafto.com/vi/bo-chuyen-doi-unix-timestamp/) ([Markdown](https://acrafto.com/vi/bo-chuyen-doi-unix-timestamp/index.md))
- ไทย (th): [แปลง Unix Timestamp](https://acrafto.com/th/unix-timestamp-converter/) ([Markdown](https://acrafto.com/th/unix-timestamp-converter/index.md))
- עברית (he): [ממיר Unix Timestamp](https://acrafto.com/he/unix-timestamp-converter/) ([Markdown](https://acrafto.com/he/unix-timestamp-converter/index.md))
