Convertitore Epoch/Unix Online
Converti i timestamp Unix in date leggibili e viceversa. Indispensabile per il debug di API e log.
A cosa serve
Timestamp Unix all'istante
Secondi e millisecondi
Rileva automaticamente se il timestamp e in secondi (10 cifre) o millisecondi (13 cifre).
100% privato
La conversione avviene nel tuo browser usando l'API Date nativa di JavaScript. Nessun server coinvolto.
Piu formati
Mostra il risultato in ISO 8601, UTC, data locale e formato relativo (X giorni fa).
Istantaneo
La conversione e immediata. Mostra anche il timestamp corrente aggiornato in tempo reale.
Come funziona
Tre passaggi, senza complicazioni
Inserisci il timestamp o la data
Incolla un timestamp Unix (in secondi o millisecondi) oppure inserisci una data in formato ISO 8601 per convertire nella direzione opposta.
Seleziona il fuso orario
Scegli il tuo fuso orario o UTC per vedere la data locale corretta. I timestamp Unix sono sempre UTC internamente.
Copia il risultato
Ottieni la data formattata in piu formati (ISO 8601, UTC, locale) o il timestamp numerico. Un clic per copiare.
FAQ
Hai delle domande?
L'epoch Unix (detto anche Unix time o POSIX time) e il numero di secondi trascorsi dal 1 gennaio 1970 alle 00:00:00 UTC, esclusi i secondi intercalari. Questa data di riferimento e stata scelta perche Unix e stato sviluppato alla fine degli anni '60 ed era necessario un punto di partenza conveniente. Il tempo Unix e continuo, uniforme e indipendente dal fuso orario, il che lo rende ideale per memorizzare e confrontare istanti nei sistemi distribuiti.
I sistemi Unix classici (C, Python datetime, database SQL) usano i secondi. Gli ambienti JavaScript/Node.js, Java (System.currentTimeMillis()) e molte API moderne usano i millisecondi. Un timestamp in secondi ha 10 cifre (ad esempio 1704067200 per il 1 gennaio 2024), mentre in millisecondi ne ha 13 (1704067200000). Alcuni sistemi usano i microsecondi (16 cifre) o i nanosecondi (19 cifre) per misurazioni ad alta precisione.
Il problema Y2K38 (detto anche Year 2038 problem o Unix Millennium Bug) si verifichera il 19 gennaio 2038 alle 03:14:07 UTC. In quel momento, il timestamp Unix memorizzato come intero con segno a 32 bit (int32) raggiunger il valore massimo (2.147.483.647) e si verifichera un overflow, riportandolo a un numero negativo che i sistemi interpreteranno come il 13 dicembre 1901. I sistemi che usano int64 (interi a 64 bit) non avranno questo problema fino all'anno 292.277.026.596.
I timestamp Unix hanno chiari vantaggi tecnici rispetto alle date formattate: sono un numero semplice (facile da confrontare, ordinare e serializzare), non hanno ambiguita di fuso orario (rappresentano sempre lo stesso istante UTC), non hanno ambiguita di formato (MM/GG/AAAA vs GG/MM/AAAA), occupano meno spazio (8 byte come int64 contro 24 o piu byte come stringa ISO) e sono piu efficienti per le operazioni di intervallo sugli indici dei database.
I timestamp Unix sono sempre UTC: rappresentano lo stesso istante indipendentemente da dove ti trovi. Il fuso orario conta solo quando si converte un timestamp in una rappresentazione leggibile (data e ora locale) o quando si crea un timestamp da una data locale. Un errore comune e ignorare il fuso orario durante il parsing delle date assumendo l'ora locale: questo causa errori di piu o meno N ore a seconda dell'offset del fuso orario del sistema, difficili da rilevare perche i test di solito girano in UTC.
Tempo Unix: il clock universale dei sistemi informatici
Il tempo Unix e lo standard de facto per rappresentare gli istanti temporali nei sistemi informatici. La sua eleganza sta nella semplicita: un singolo intero che cresce in modo monotono, senza ambiguita di formato, fuso orario o calendario. E stato definito nella specifica POSIX e adottato da tutti i sistemi operativi derivati da Unix (Linux, macOS, BSD) e dalla maggior parte dei moderni linguaggi di programmazione. POSIX.1-2008 lo definisce formalmente come il numero di secondi dall'epoch Unix, con la particolarita che i secondi intercalari non vengono conteggiati.
Nell'ecosistema dei database, i timestamp Unix sono onnipresenti. PostgreSQL ha il tipo TIMESTAMP che internamente memorizza i microsecondi dall'epoch Unix. MySQL fornisce le funzioni UNIX_TIMESTAMP() e FROM_UNIXTIME(). MongoDB memorizza le date come millisecondi dall'epoch nel suo tipo Date. Redis usa i timestamp Unix per la scadenza delle chiavi (EXPIREAT). I log di sistema di Apache, Nginx e syslog includono spesso timestamp Unix per facilitare l'elaborazione con strumenti come awk, grep e script di shell.
Il problema Y2K38 e l'equivalente moderno dell'originale Y2K: i sistemi che memorizzano i timestamp come int32 con segno andranno in overflow il 19 gennaio 2038. Sebbene la maggior parte dei sistemi moderni usi gia int64, il problema persiste nei sistemi embedded, nei firmware obsoleti e nel codice legacy. La migrazione a int64 e la soluzione standard. Convertir.ai mostra quanto tempo manca al Y2K38 e ti permette di verificare se un timestamp specifico cade prima o dopo quella data critica.