Convertitore di Timestamp Unix
Introduzione
Un timestamp Unix (o tempo epoch) è il modo standard con cui i computer rappresentano il tempo: un singolo intero che conta i secondi trascorsi dal 1 gennaio 1970 a mezzanotte UTC, escludendo i secondi intercalari. Appare in record di database, risposte API, token JWT, file di log, schedule cron e intestazioni di cache. Mentre le macchine leggono questi interi all'istante, gli umani hanno bisogno che vengano tradotti in date e orari del calendario — spesso in formati multipli simultaneamente.
Il Convertitore di Timestamp Unix serve sviluppatori, amministratori di sistema e analisti di sicurezza che devono decodificare timestamp da log, verificare la scadenza di token, pianificare job cron tra fusi orari o cercare rapidamente un valore epoch storico o futuro. Lo strumento è suddiviso in due blocchi indipendenti:
- Blocco A (Timestamp Unix → Data e Ora): inserisci un timestamp numerico e visualizzalo in 21 formati di data e ora, organizzati per famiglia standard.
- Blocco B (Data e Ora → Timestamp Unix): scegli una data del calendario, un'ora e un offset fuso orario, e ottieni il timestamp equivalente in secondi, millisecondi e microsecondi.
Entrambi i blocchi hanno il proprio selettore del fuso orario, così puoi lavorare in UTC per una direzione e con un offset personalizzato per l'altra senza interferenze.
Casi d'uso
La conversione dei timestamp Unix è un'esigenza ricorrente nello sviluppo, nelle operazioni e nel lavoro di sicurezza. Comprendere questi scenari ti aiuta a integrare lo strumento nel tuo flusso di lavoro.
Debug di log e segnalazioni di errori
I log delle applicazioni, dei database e i servizi di tracciamento degli errori registrano spesso i timestamp come interi epoch Unix. Quando si indaga su un incidente, incolla il timestamp nel Blocco A per vedere l'ora leggibile in più formati — RFC 1123Z per la correlazione con le intestazioni HTTP, ISO 8601 per i payload JSON e tempo relativo per la valutazione della recentezza.
Integrazione API e verifica dei token
JWT, token OAuth e intestazioni di limitazione della velocità delle API utilizzano frequentemente timestamp Unix per la scadenza (exp), l'emissione (iat) e le finestre di ripristino. Usa il convertitore per verificare che un token sia ancora valido, controllare quando è stato emesso rispetto al tuo fuso orario attuale e confermare che il tuo orologio locale corrisponda all'epoch del server.
Pianificazione di cron job e attività programmate
Quando si configurano cron job, backup pianificati del database o trigger di pipeline CI/CD, spesso è necessario esprimere un orario come timestamp Unix. Il Blocco B ti permette di selezionare una data, un'ora e un fuso orario, e poi genera il valore epoch esatto — senza calcoli mentali o equilibrismi con i fusi orari.
Collaborazione tra più fusi orari
I team distribuiti su più fusi orari condividono frammenti di log, finestre di deploy e timeline di incidenti. Incollare un timestamp Unix nel Blocco A e passare da UTC a Locale e fusi orari personalizzati rivela come lo stesso istante appare nell'ora locale di ogni membro del team — eliminando ambiguità dalle stringhe convertite.
Come funziona
Il tempo Unix conta i secondi dall'epoch (1 gennaio 1970, 00:00:00 UTC). Ogni tick aggiunge esattamente un secondo. Poiché è ancorato a UTC, un timestamp Unix rappresenta lo stesso istante ovunque sulla Terra — il fuso orario conta solo quando lo converti in una stringa leggibile.
Lo strumento utilizza l'oggetto JavaScript Date nativo del browser per tutte le conversioni. Ogni Date memorizza internamente il tempo come un singolo numero: millisecondi dall'epoch Unix. Quando inserisci un timestamp, lo strumento costruisce un Date e legge le sue proprietà UTC o locali a seconda del selettore del fuso orario attivo. Quando inserisci una data e un'ora del calendario, lo strumento calcola la differenza dall'epoch aggiustata per l'offset del fuso orario specificato.
Unità dei timestamp nei vari ecosistemi
Piattaforme e linguaggi diversi usano unità epoch differenti. Il selettore delle unità dello strumento ti permette di abbinare la precisione della tua fonte:
| Unità | Utilizzato da | Esempio |
|---|---|---|
| Secondi | Go, PHP, Python, PostgreSQL, Ruby, cron | 10 cifre |
| Millisecondi | JavaScript (Date.now()), Ethereum, .NET DateTimeOffset, Java System.currentTimeMillis() |
13 cifre |
| Microsecondi | Linux /proc/uptime, Go time.UnixMicro(), profiling ad alta risoluzione |
16 cifre |
Lo strumento converte il tuo input in secondi internamente. Se incolli un valore a 13 cifre da Date.now() di JavaScript, imposta l'unità su millisecondi e lo strumento gestirà la divisione.
Fuso orario e ora legale
Un timestamp Unix rappresenta sempre lo stesso istante fisico. Il selettore del fuso orario in ogni blocco cambia solo come quell'istante viene visualizzato o interpretato.
- Relative: quanto tempo fa è avvenuta la richiesta – questa riga si aggiorna in tempo reale con il tuo orologio, il valore cambia ogni volta che apri la pagina
- Modalità locale: usa il fuso orario di sistema del browser, inclusi gli aggiustamenti automatici dell'ora legale.
- Modalità personalizzata: un offset UTC numerico tra -12:00 e +14:00. Lo strumento applica questo offset direttamente senza alcuna correzione dell'ora legale — tratta il tuo offset come un orario fisso.
Quando l'ora legale è in effetto, l'offset del fuso orario locale cambia. Lo stesso timestamp visualizzato in modalità Locale potrebbe mostrare un'ora diversa rispetto al mese precedente. È normale: il timestamp è lo stesso, ma la convenzione dell'orario locale è cambiata.
Per le righe in formato locale (Locale, Locale Date, Locale Time), lo strumento rispetta sia il fuso orario selezionato che le impostazioni linguistiche del browser. Se scegli la modalità UTC, toLocaleString riceve { timeZone: 'UTC' }, assicurando che il formato locale usi il fuso orario corretto.
Utilizzo
Blocco A — Timestamp in Data e Ora
- Inserisci un timestamp Unix nel campo di input (solo cifre, segno meno opzionale per date precedenti al 1970).
- Seleziona la precisione dell'input: Secondi, Millisecondi o Microsecondi.
- Scegli un fuso orario: UTC, Locale (fuso orario di sistema), o Personalizzato (inserisci un offset tra -12 e +14 con passi da mezz'ora).
- Leggi i risultati — 21 righe di formati di data e ora si aggiornano in tempo reale.
Blocco B — Data e Ora in Timestamp
- Inserisci l'anno direttamente. Usa i menu a discesa per mese, giorno, ora, minuto e secondo.
- Scegli un fuso orario dal selettore UTC/GMT: Locale corrisponde al fuso orario di sistema; inserimenti numerici come
UTC+8trattano l'input come orario locale in quel fuso. - I risultati del timestamp appaiono immediatamente in secondi, millisecondi, microsecondi, esadecimale e tempo relativo.
I due blocchi operano indipendentemente. Modificare il Blocco A non influisce sul Blocco B e viceversa. Questo ti permette di confrontare timestamp fianco a fianco o bloccare un valore di riferimento mentre esplori formati diversi.
Tutorial
Scenario 1: Decodificare un timestamp da un log del server
Il tuo log applicativo mostra il timestamp 1742345678 — una chiamata API che è fallita. Devi sapere esattamente quando è successo e anche controllare il formato HTTP-date per correlare con le intestazioni delle risposte HTTP.
- Apri il Convertitore di Timestamp Unix.
- Digita
1742345678nel campo di input del Blocco A. - I risultati mostrano 21 righe di formato, inclusi:
- @ Format:
3/19/2025 @ 12:54:38 AM UTC(formato umano a scansione rapida) - RFC 1123Z:
Wed, 19 Mar 2025 00:54:38 +0000(standard HTTP-date, corrisponde alle intestazioniDateeLast-Modified)
- @ Format:
- Relative: quanto tempo fa è avvenuta la richiesta – questa riga si aggiorna in tempo reale con il tuo orologio, il valore cambia ogni volta che apri la pagina
- Cambia il fuso orario su Locale per vedere che ora era nel tuo fuso orario.
Scenario 2: Pianificare un job cron a un orario specifico
Hai bisogno che un job cron venga eseguito alle 3:30 AM Eastern Time il 15 giugno 2026. L'Eastern Daylight Time è UTC-4 a giugno.
- Nel Blocco B, imposta la data al 15 giugno 2026 e l'ora a 03:30:00.
- Imposta il selettore UTC/GMT su
UTC+4(EDT è UTC-4, quindi inserisci -4). - Leggi il valore in Secondi — questo è il tuo timestamp cron. Le righe Hex e Relative si aggiornano anch'esse, dandoti un riferimento sia machine-readable che human-readable simultaneamente.
Consigli utili
Casi d'uso dei formati
Ogni formato di output serve a uno scopo specifico. Ecco quando usarli:
| Formato | Quando usarlo |
|---|---|
| @ Format | Scansione visiva rapida — il layout compatto M/D/YYYY @ HH:MM:SS AM/PM è leggibile a colpo d'occhio |
| DateTime | Inserimenti in database SQL (YYYY-MM-DD HH:MM:SS), la forma stringa più comune al di fuori di JSON |
| ISO 8601 | Payload JSON (new Date().toISOString()), corpi di richieste/risposte REST API |
| RFC 3339 | Feed RSS, feed Atom, abbonamenti calendario (iCalendar); usato dove ISO 8601 necessita di un profilo più stretto |
| RFC 1123Z | Intestazioni HTTP (Date, Last-Modified, Expires), cookie (attributo expires) |
| RFC 822 | Intestazioni email (campo Date), formati legacy di newsgroup |
| RFC 850 | Vecchie implementazioni HTTP/1.0 (rare oggi, mantenuto per retrocompatibilità) |
| ANSIC | Costante time.ANSIC di Go — usata quando si legge l'output predefinito di time.Time di Go |
| RubyDate | Formato Time#ctime di Ruby; corrisponde all'output classico Unix ctime |
| DateOnly / TimeOnly | Costanti di convenienza Go 1.20+ — estrae solo la data o solo l'ora |
| Kitchen | Formato orologio a 12 ore di Go — lettura rapida dell'orario |
| Locale | Visualizzazione nell'interfaccia utente; rispetta le convenzioni linguistiche e culturali del browser |
| Hex | Debug di basso livello, timestamp firmware, sistemi embedded |
| Relative | Dashboard, elementi UI "tempo dall'ultimo evento" |
Implementazioni nei linguaggi
Ottieni il timestamp Unix corrente nel tuo linguaggio preferito:
// Go
time.Now().Unix() // secondi
time.Now().UnixMilli() // millisecondi (Go 1.17+)
// JavaScript
Math.floor(Date.now() / 1000) // secondi
Date.now() // millisecondi
// PHP
time(); // secondi
intval(microtime(true) * 1000); // millisecondi
# Python
import time; int(time.time()) # secondi
import time; int(time.time() * 1000) # millisecondi
Consigli generali
- Timestamp pre-1970: Inserisci valori negativi. Il 1 dicembre 1960 alle 00:00:00 UTC è
-286329600. - Input esadecimale: I valori esadecimali (con o senza prefisso
0x) vengono analizzati automaticamente — inserisci0x67DA15CEe vedi l'equivalente decimale. - Confrontare fusi orari: Imposta il fuso orario del Blocco A su UTC e il fuso orario del Blocco A su Local contemporaneamente per vedere come lo stesso istante viene visualizzato in entrambi.
Errori comuni
I timestamp Unix sono semplici nel concetto ma facili da usare in modo errato. Ecco gli errori più comuni.
Confusione tra secondi e millisecondi
Questo è l'errore più frequente. Un numero di 10 cifre come 1712345678 sono secondi; un numero di 13 cifre come 1712345678000 sono millisecondi. Incollare millisecondi in un convertitore in modalità secondi produce una data di decenni nel futuro (ad esempio 54382 anni da ora). Controlla sempre il numero di cifre prima di convertire.
Ignorare il fuso orario nella direzione inversa
Quando si converte una data e un'ora in un timestamp Unix (Blocco B), il fuso orario selezionato è importante. Inserire 2026-06-15 03:30:00 con UTC selezionato dà un timestamp diverso rispetto alla stessa ora con UTC+8 — la differenza è esattamente 8 ore. L'intero risultante è corretto per ogni interpretazione, ma se dimentichi di impostare il fuso orario, l'output non corrisponderà a ciò che il sistema ricevente si aspetta.
Presumere che l'ora locale corrisponda all'ora del server
Quando decodifichi un timestamp da un log del server, il timestamp è già in UTC — il fuso orario influisce solo sulla visualizzazione. Passare il Blocco A alla modalità Locale cambia l'ora renderizzata ma non l'istante sottostante. Se l'output sembra sbagliato, controlla prima il selettore del fuso orario, non il valore del timestamp.
Utilizzare l'unità sbagliata per valori hex o relativi
Gli output hex e tempo relativo derivano dalla stessa conversione interna. Inserire un timestamp in millisecondi con l'unità impostata su secondi produce un valore hex che rappresenta un istante diverso. Conferma sempre che il selettore dell'unità corrisponda alla precisione dei tuoi dati sorgente.
Alternative
| Strumento | Timestamp in Data | Data in Timestamp | 21+ Formati | Fuso orario indipendente per blocco | Lato client |
|---|---|---|---|---|---|
| Toollect Unix Timestamp Converter | Sì | Sì | Sì (21) | Sì | Sì |
| unixtimestamp.com | Sì | Sì | ~5 | No | Sì |
| epochconverter.com | Sì | Sì | ~8 | No | Sì |
| site24x7.com | Sì | Sì | ~6 | IANA completo | Sì |
date -d @timestamp (Linux) |
Sì | No | ~3 | Solo TZ sistema | N/D |
Privacy dei dati
Il Convertitore di Timestamp Unix elabora ogni conversione interamente nel tuo browser. Nessun timestamp, data o valore del fuso orario inserito viene trasmesso a un server, memorizzato in un database o registrato in un sistema.
Tutte le conversioni vengono eseguite utilizzando l'oggetto Date nativo di JavaScript in memoria. La pagina dello strumento non include script di analisi, pixel di tracciamento o incorporamenti di terze parti. Nessun cookie, voce localStorage o sessionStorage viene creato o letto.
Dopo il caricamento iniziale della pagina, il convertitore funziona completamente offline — puoi disconnetterti da Internet e continuare a convertire timestamp senza interruzioni. Puoi verificarlo utilizzando lo strumento in modalità aereo o ispezionando l'attività di rete negli strumenti di sviluppo del tuo browser.
Risoluzione dei problemi
| Problema | Causa probabile | Soluzione |
|---|---|---|
| L'output mostra una data nel 1970 o 1969 | L'input viene letto nell'unità sbagliata | Cambia il selettore dell'unità in modo che corrisponda al tuo input (secondi / ms / μs) |
| Data e ora mostrano il momento sbagliato | Il selettore del fuso orario è impostato in modo errato | Passa a UTC per verificare l'istante di base, poi regola con l'offset corretto |
| La riga Locale mostra l'ora sbagliata | La formattazione Locale ignora la selezione del fuso orario del Blocco A | Questo è stato corretto — ora il locale rispetta il fuso orario selezionato. Verifica di essere sull'ultima versione |
| L'output non si aggiorna | L'input contiene caratteri non numerici | Pulisci il campo e inserisci solo cifre e un eventuale segno meno iniziale |
| Il tempo relativo mostra "just now" per un timestamp passato noto | Il relativo è calcolato rispetto all'orologio di sistema corrente | Normale — il tempo relativo confronta sempre il timestamp con "adesso" |
| L'input a 13 cifre mostra una data molto nel futuro | L'input è in millisecondi ma l'unità predefinita è secondi | Cambia l'unità su "Millisecondi" |
Specifiche tecniche
- Motore di conversione: Oggetto JavaScript
Date(standard ECMAScript) - Intervallo timestamp: Intero intervallo numerico JavaScript (±9 quadrilioni di secondi, che copre miliardi di anni)
- Input supportato: Interi decimali, valori negativi (pre-1970)
- Precisione input: Secondi, millisecondi o microsecondi (configurabile)
- Supporto fusi orari: UTC, locale (sistema browser), offset GMT personalizzato (-12 a +14 con passi da 0,5 ore); indipendente per ogni blocco
Le 21 famiglie di formati
| # | Gruppo | Formato | Esempio |
|---|---|---|---|
| 1 | Comune | @ Format | 3/19/2025 @ 12:54:38 AM UTC |
| 2 | Comune | DateTime | 2025-03-19 00:54:38 |
| 3 | Comune | ISO 8601 | 2025-03-19T00:54:38+00:00 |
| 4 | Comune | RFC 3339 | 2025-03-19T00:54:38Z (UTC usa Z) |
| 5 | RFC | RFC 1123Z | Wed, 19 Mar 2025 00:54:38 +0000 |
| 6 | RFC | RFC 822 | 19 Mar 25 00:54 UTC |
| 7 | RFC | RFC 822Z | 19 Mar 25 00:54 +0000 |
| 8 | RFC | RFC 1123 | Wed, 19 Mar 2025 00:54:38 UTC |
| 9 | RFC | RFC 850 | Wednesday, 19-Mar-25 00:54:38 UTC |
| 10 | Go | ANSIC | Wed Mar 19 00:54:38 2025 |
| 11 | Go | UnixDate | Wed Mar 19 00:54:38 UTC 2025 |
| 12 | Go | RubyDate | Wed Mar 19 00:54:38 +0000 2025 |
| 13 | Go | DateOnly | 2025-03-19 |
| 14 | Go | TimeOnly | 00:54:38 |
| 15 | Go | Kitchen | 12:54AM |
| 16 | Go | Stamp | Mar 19 00:54:38 |
| 17 | Locale | Locale | 3/19/2025, 12:54:38 AM (dipende dal browser) |
| 18 | Locale | Locale Date | 3/19/2025 |
| 19 | Locale | Locale Time | 12:54:38 AM |
| 20 | Altro | Hex | 0x67DA15CE |
| 21 | Altro | Relative | si aggiorna in tempo reale |
Albero genealogico dei formati
I formati di data e ora in questo strumento derivano da quattro lignaggi:
- RFC 822 (1982) ha definito il formato originale delle date email con un anno a 2 cifre. RFC 1123 (1989) lo ha sostituito con un anno a 4 cifre. RFC 1123Z è lo stesso formato che usa un offset numerico del fuso orario (
+0000) invece di un'abbreviazione alfabetica (UTC). Insieme coprono le intestazioni HTTP (1123Z) e i formati email (822). - ISO 8601 (1988) ha stabilito lo standard internazionale per la rappresentazione di data e ora. RFC 3339 (2002) profila ISO 8601 per uso Internet, aggiungendo requisiti come la
Zobbligatoria per UTC. La maggior parte delle API moderne sceglie uno di questi due. - Costanti Go time (
ANSIC,UnixDate,RubyDate, ecc.) sono layout di convenienza integrati nella libreria standard di Go. Rispecchiano le convenzioni POSIX (ctimeoutput), gli standard RFC e forme di convenienza specifiche di Go (DateOnly,Kitchen,Stamp). - Formati Locale usano l'API
Intl.DateTimeFormatdel browser, che segue il Unicode Common Locale Data Repository (CLDR). L'output esatto dipende dall'impostazione linguistica del browser dell'utente.
Compatibilità
- Browser: Chrome 90+, Firefox 90+, Safari 15+, Edge 90+
- Dipendenze: Nessuna — JavaScript puro, zero librerie di terze parti
- Elaborazione dati: 100% lato client — zero richieste di rete
Caratteristiche
- Conversione bidirezionale tra timestamp Unix e date leggibili
- Visualizzazione in tempo reale del timestamp Unix corrente con aggiornamenti automatici
- Molteplici formati di output: UTC, ora locale, ISO 8601, esadecimale e tempo relativo
- Supporto per offset fuso orario personalizzato per conversione accurata da data a timestamp
- Elaborazione lato client — nessun dato inviato a server