Vai al contenuto
Quaestio

Timestamp Unix

Inserisci un timestamp e compare l’istante, oppure inserisci una data e compare il numero.

Timestamp in questo momento

–

Secondi, millisecondi o microsecondi. I numeri negativi riportano a prima del 1970.

  • UTCgiovedì 4 settembre 2025 alle ore 15:33:20
  • La tua ora–
  • ISO 86012025-09-04T15:33:20Z
  • In secondi1757000000
  • In millisecondi1757000000000

Scrivi come 2026-09-12 o 2026-09-12T14:30. Senza fuso si legge come UTC.

1789214400

Punti di riferimento

NumeroIstante
L’inizio dell’epoca1970-01-01T00:00:00Z
Un miliardo di secondi2001-09-09T01:46:40Z
Dove finiscono i trentadue bit2038-01-19T03:14:07Z
Due miliardi di secondi2033-05-18T03:33:20Z

Il tempo Unix non conta i secondi intercalari. Un giorno Unix ha sempre esattamente 86.400 secondi.

Incorpora

Incorpora lo strumento nel tuo sito

Copia il codice e incollalo dove vuoi che appaia lo strumento, per esempio in un articolo del blog o in una pagina scolastica. È gratuito, il riquadro non ha pubblicità e lo strumento calcola nel browser del visitatore.

Come funziona

Il tempo Unix è il numero di secondi dal 1° gennaio 1970 in UTC. Quel punto zero è stato scelto perché era comodamente vicino quando la misura fu introdotta, non perché significhi qualcosa di per sé.

La misura non conta i secondi intercalari. Un giorno Unix ha sempre esattamente 86.400 secondi, anche nei giorni in cui UTC ne ha guadagnato uno. Questo tiene semplice il calcolo, e il tempo Unix segue comunque la data e l’ora di UTC. Ma la differenza fra due timestamp non è sempre il tempo davvero trascorso. Dal 1972 sono stati aggiunti 27 secondi intercalari, che il tempo Unix non conta. Fuori dalla navigazione satellitare non ha importanza.

L’unità si indovina dalla grandezza del numero. Tutto ciò che sta sotto i dieci miliardi si legge come secondi, il che arriva fino all’anno 2286, i numeri più grandi come millisecondi o microsecondi. Il limite sta lì perché un anno del presente venga letto correttamente.

I numeri negativi riportano a prima del 1970 e funzionano allo stesso modo.

Un contatore con segno a 32 bit finisce il 19 gennaio 2038 alle 3:14:07 UTC e poi torna indietro al 1901. È il problema dell’anno 2038, lo stesso tipo di errore del millennium bug, ma in binario. I sistemi che contano a 64 bit non ne sono toccati.

Una data senza fuso nel testo si legge come UTC, così lo stesso testo dà ovunque lo stesso numero.

Come si legge il numero

Spazi e trattini bassi nel numero vengono tolti prima della lettura. Se non scegli l’unità decide la grandezza: sotto i dieci miliardi il numero si legge come secondi, da dieci miliardi come millisecondi e da cento bilioni come microsecondi. Con questi limiti un valore in millisecondi precedente al 26 aprile 1970, e uno in microsecondi precedente al 3 marzo 1973, viene letto nell’unità sbagliata. I nanosecondi non sono un’unità: 1.757.000.000.000.000.000 nanosecondi, cioè il 4 settembre 2025, si leggono come microsecondi e finiscono nell’anno 57647. In quel caso togli le ultime tre cifre. Secondo lo standard ECMAScript il calendario del browser va da 100 milioni di giorni prima a 100 milioni di giorni dopo il 1970, cioè fino al 13 settembre 275760, e i numeri oltre danno un messaggio d’errore.

Esempio: dove finiscono i 32 bit

2³¹ − 1 = 2.147.483.647 è il numero più grande che un contatore a 32 bit con segno può contenere. Un secondo dopo un contatore del genere contiene −2.147.483.648, che lo strumento mostra come 13 dicembre 1901 alle 20:45:52 UTC. Gli istanti oltre questi due limiti ricevono un avviso: 2.147.483.648 lo fa comparire, 2.147.483.647 no.

Date scritte come testo

In JavaScript 2026-09-12T14:30 si legge come ora locale, ma 2026-09-12 come UTC, secondo lo standard ECMAScript. Lo strumento legge entrambe come UTC, quindi 2026-09-12T14:30 dà sempre 1.789.223.400. Le frazioni di secondo sono arrotondate per difetto al secondo intero.

Le date che non esistono vengono rifiutate: 2026-02-30 dà un messaggio d’errore, mentre Date in V8, il motore di Chrome e di Edge, la trasforma senza avvisare nel 2 marzo. Le 24:00 sono accettate come fine del giorno, come ammette ECMAScript.

Secondi intercalari e il tempo prima del 1970

POSIX definisce i secondi dall’Epoch con una formula e dice espressamente che il loro rapporto con l’UTC reale non è specificato. ECMAScript dice che non esiste un valore di tempo per un istante dentro un secondo intercalare. Così 2016-12-31T23:59:60Z, il secondo intercalare più recente, dà il messaggio d’errore per un’ora che non esiste, mentre il secondo prima dà 1.483.228.799 e la mezzanotte dopo 1.483.228.800. Secondo l’IERS la differenza fra il tempo atomico, TAI, e l’UTC era di 10 secondi nel 1972 ed è di 37 secondi dal 1° gennaio 2017. Il Bulletin C 72 dell’IERS annuncia che a fine dicembre 2026 non sarà aggiunto nessun secondo intercalare.

Per i valori negativi POSIX lascia il rapporto indefinito. Lo strumento segue ECMAScript, che conta all’indietro con il calendario gregoriano anche prima della sua introduzione.

Fonti

Come vengono verificati gli strumenti