Conversione delle marche temporali Unix
Converte in entrambi i sensi fra la marca temporale Unix, in secondi o millesimi dall'epoca, e la data leggibile da una persona. Uno strumento per sviluppatori con orologio mondiale, inserimento immediato dell'ora corrente e visualizzazione su più fusi orari.
Nozioni di base sulla marca temporale Unix
La marca temporale Unix esprime un istante come numero di secondi trascorsi dalla mezzanotte del primo gennaio 1970 in tempo coordinato universale, la cosiddetta epoca Unix. La tabella riporta alcuni valori significativi con la data corrispondente.
| Marca temporale (secondi) | Data e ora in UTC | Note |
|---|---|---|
| 0 | 1970-01-01T00:00:00Z | Epoca Unix, origine delle marche temporali |
| 1000000000 | 2001-09-09T01:46:40Z | Il momento in cui si raggiunse il miliardo di secondi, detto Unix Billennium |
| 1234567890 | 2009-02-13T23:31:30Z | Valore divenuto celebre perché le sue cifre decimali si succedono da 1 a 9 |
| 2147483647 | 2038-01-19T03:14:07Z | Il problema del 2038: valore massimo di un intero con segno a 32 bit, che un secondo dopo trabocca |
Che cos'è il convertitore di marche temporali Unix
Questo strumento converte in entrambi i sensi la marca temporale Unix — il numero di secondi o di millesimi di secondo trascorsi dall'epoca Unix, cioè la mezzanotte del primo gennaio 1970 in tempo coordinato universale — e una data leggibile da una persona. Basta incollare un numero per ottenere subito la data in formato ISO 8601, il tempo relativo rispetto a adesso e la stessa istante letta in sei fusi orari; oppure si può partire da una data e un'ora scelte a piacere per risalire alla marca temporale corrispondente, con la gestione corretta del passaggio all'ora legale.
Tutta l'elaborazione avviene nel navigatore: nessun dato lascia il dispositivo. Questo lo rende adatto anche a marche temporali estratte da registri riservati o da basi di dati di produzione. Vale la pena ricordare, come contesto, il cosiddetto problema del 2038: i sistemi che memorizzano la marca temporale con un intero con segno a 32 bit non potranno rappresentare un istante oltre le 03:14:07 del 19 gennaio 2038 in tempo coordinato universale, esattamente 2.147.483.647 secondi dopo l'epoca, superato il quale il conteggio trabocca e la data si azzera.
Come si usa il convertitore
- Scegliete la direzione della conversione Nella prima scheda si converte da marca temporale a data, nella seconda da data a marca temporale: individuate quella che corrisponde a ciò che avete già in mano.
- Incollate la marca temporale oppure inserite la data Nel primo caso incollate il numero preso, per esempio, da un registro o da una risposta di un'interfaccia; nel secondo scegliete data, ora e fuso orario dal selettore.
- Lasciate il riconoscimento automatico dell'unità, se non siete certi Il numero di cifre distingue di norma secondi (circa dieci cifre) da millesimi di secondo (circa tredici); l'unità può comunque essere forzata manualmente in qualsiasi momento.
- Leggete il risultato nella tabella dei fusi orari Lo stesso istante viene mostrato contemporaneamente in UTC, Giappone, New York, Los Angeles, Londra e Parigi, utile per confrontare più squadre o più mercati.
- Usate il pulsante dell'ora corrente per una prova rapida Inserisce all'istante il momento presente letto dall'orologio del dispositivo, comodo per verificare al volo il formato atteso prima di incollare dati veri.
Consigli per sfruttarlo al meglio
- Dieci cifre indicano di norma i secondi, tredici i millesimi di secondo. Lasciando il riconoscimento automatico, l'unità viene dedotta dal numero di cifre.
- Potete incollare senz'altro la marca temporale presa dai registri di un servente o dalla risposta di un'interfaccia e vederla subito espressa in più fusi orari.
- Nella conversione dalla data alla marca temporale ricordate che occorre indicare esplicitamente a quale fuso orario si riferisca la data inserita.
- Il formato ISO 8601 in tempo coordinato universale è interpretabile direttamente da molti linguaggi e molte basi di dati: è quindi un utile riferimento nella ricerca nei registri e nella progettazione delle interfacce.
- Il pulsante per inserire l'ora corrente riporta immediatamente nel campo il momento presente, letto dall'orologio del navigatore.
Situazioni in cui torna utile
Analisi dei registri di un servente
I registri riportano spesso l'orario come marca temporale grezza: incollandola qui si ottiene subito la data leggibile e la posizione nel fuso orario di chi ha generato l'evento, utile per ricostruire l'ordine cronologico durante un'indagine su un guasto.
Messa a punto di interfacce di programmazione
Molte interfacce restituiscono campi come created_at o expires_at in secondi o millesimi dall'epoca: verificare qui il valore prima di scrivere il codice evita di scoprire solo in produzione se l'unità attesa era quella sbagliata.
Controllo delle colonne temporali di una base di dati
Quando una colonna conserva l'orario come intero anziché come tipo data, questo strumento permette di verificare a occhio, senza scrivere una query di conversione, se il valore memorizzato corrisponde davvero al momento atteso.
Coordinamento fra squadre in fusi orari diversi
Condividendo una scadenza o l'orario di una riunione come marca temporale, ciascuno può leggere qui l'orario locale corrispondente senza il rischio di errori di conversione manuale.
Preparazione di dati di prova o di esempi di codice
Per popolare un ambiente di collaudo con date coerenti, o per includere un valore realistico in un frammento di codice dimostrativo, è più rapido generare qui la marca temporale che calcolarla a mano.
Glossario
- Marca temporale Unix
- Il numero di secondi (o di millesimi di secondo) trascorsi dall'epoca Unix. Individua un istante con un solo numero indipendente dal fuso orario, il che lo rende comodo per lo scambio di dati fra sistemi diversi.
- Epoca Unix
- L'istante di riferimento da cui si conta la marca temporale: la mezzanotte del primo gennaio 1970 in tempo coordinato universale. Da questa data prende il nome anche l'espressione «epoca».
- UTC (tempo coordinato universale)
- Lo standard di riferimento mondiale per l'ora civile, indipendente da qualunque fuso orario locale. La marca temporale Unix è definita a partire da questo tempo, e la maggior parte dei sistemi lo usa internamente prima di convertire nel fuso dell'utente.
- Epoca in millesimi di secondo
- Variante della marca temporale Unix che conta i millesimi di secondo anziché i secondi interi, usata da JavaScript e da molte interfacce web quando serve una precisione maggiore.
- ISO 8601
- Lo standard internazionale per scrivere data e ora in un formato testuale non ambiguo, per esempio 2026-09-20T12:00:00Z. È interpretabile direttamente da molti linguaggi e molte basi di dati.
- Problema del 2038
- Il difetto per cui i sistemi che memorizzano la marca temporale con un intero con segno a 32 bit traboccheranno alle 03:14:07 del 19 gennaio 2038 in tempo coordinato universale, un secondo dopo il valore massimo rappresentabile di 2.147.483.647 secondi dall'epoca.
- Ora legale (DST)
- La pratica di spostare l'orologio di un'ora in alcuni periodi dell'anno, adottata in molti dei fusi orari elencati in questo strumento. La conversione dalla data alla marca temporale tiene conto del cambio automaticamente.
- Tempo relativo
- Un modo di esprimere un istante rispetto ad adesso, come «tre ore fa» o «fra due giorni», più immediato da leggere rispetto a una data assoluta quando l'evento è recente.
Domande frequenti
A proposito — perché gli elaboratori contano il tempo in secondi
Le persone indicano un istante combinando anno, mese, giorno e ora, come «12 luglio 2026, ore 17.08», ma per una macchina questa forma è scomoda: bisogna tener conto ogni volta di regole intricate — anni bisestili, fusi orari, ora legale — e perfino calcolare la differenza fra due istanti richiede un'elaborazione laboriosa. Di qui l'idea di esprimere il tempo con un solo numero, i secondi trascorsi da un istante di riferimento: è la marca temporale Unix.
Il vantaggio maggiore di trattare il tempo come un unico numero intero è che confronti, somme e sottrazioni si riducono a semplici operazioni aritmetiche. Per sapere quanti secondi separino due eventi basta sottrarre le marche temporali, senza curarsi degli anni bisestili né della diversa lunghezza dei mesi. Proprio per questa semplicità la marca temporale è stata adottata come rappresentazione interna non soltanto dai sistemi Unix, ma anche dalle basi di dati e da molti linguaggi di programmazione, diventando lo standard mondiale di fatto. Windows, invece, conserva l'ora come FILETIME (intervalli di 100 nanosecondi dal 1° gennaio 1601), anche se il time_t della sua libreria C usa lo stesso formato delle marche temporali Unix.
D'altra parte, l'idea di un numero unico indipendente dal fuso orario comporta che la conversione al fuso avvenga soltanto al momento della lettura da parte di una persona. La stessa marca temporale corrisponde a piena notte a Tokyo e al primo pomeriggio del giorno precedente a New York: la data che si vede cambia radicalmente secondo il fuso scelto. Molti dei difetti che nell'analisi dei registri o nella messa a punto delle integrazioni fra interfacce si manifestano come «orari sfasati» nascono proprio dalla dimenticanza di questa conversione.