ToolHub
View All Posts

Timestamp Unix Spiegato: Conversione tra Formati

Il timestamp Unix è uno dei concetti più fondamentali nell'informatica, ma molti sviluppatori lo trovano ancora confuso. Che tu stia debuggando risposte API, analizzando file di log o costruendo sistemi di schedulazione, capire come funzionano i timestamp Unix è una competenza essenziale.

Cos'è un Timestamp Unix?

Un timestamp Unix, noto anche come epoch time o POSIX time, è il numero di secondi trascorsi dal 1° gennaio 1970 alle 00:00:00 UTC (esclusi i secondi intercalari). Questo punto di riferimento è chiamato l'epoch Unix. I timestamp sono memorizzati come un singolo intero, rendendoli facili da confrontare, ordinare e calcolare le differenze di tempo.

Ad esempio, il timestamp Unix 1700000000 corrisponde al 14 novembre 2023 22:13:20 UTC. La semplicità di rappresentare il tempo come un singolo numero rende i timestamp Unix lo standard per sistemi operativi, database e linguaggi di programmazione.

Perché Usare i Timestamp Unix

Formati Comuni di Timestamp

Vantaggi: universali e non ambigui (sempre UTC), facili da confrontare (confronto tra interi), archiviazione compatta, indipendenti dal linguaggio, supportano operazioni aritmetiche (aggiungere/sottrarre secondi).

FormatoEsempioUtilizzato da
Secondi Unix1700000000Linux, API, Database
Millisecondi Unix1700000000000JavaScript, Java
Microsecondi Unix1700000000000000Python, Go
ISO 86012023-11-14T22:13:20ZAPI REST, JSON
RFC 2822Tue, 14 Nov 2023 22:13:20 +0000Intestazioni Email, HTTP

Convertire Timestamp Unix in Date

In JavaScript

JavaScript: timestamp in millisecondi. Moltiplica per 1000 per convertire da secondi, usa toLocaleString() o toISOString().

In Python

Python: datetime.fromtimestamp() per convertire in oggetti datetime. Supporta precisione al microsecondo.

Nella Riga di Comando

Riga di comando: date -d @1700000000 (Linux) o date -r 1700000000 (macOS).

Usando Strumenti Online

Il modo più veloce è usare un convertitore online. Incolla il tuo timestamp e lo strumento mostra istantaneamente la data e l'ora corrispondenti. Prova il nostro convertitore gratuito.

Convertire Date in Timestamp Unix

Convertire date in timestamp: JavaScript: new Date().getTime() / 1000. Python: datetime.timestamp().

Il Problema dell'Anno 2038: i sistemi a 32 bit con segno andranno in overflow il 19 gennaio 2038 alle 03:14:07 UTC. La soluzione è usare interi a 64 bit, che estendono l'intervallo a circa 292 miliardi di anni. La maggior parte dei sistemi moderni è già passata ai timestamp a 64 bit.

Il Problema dell'Anno 2038

I timestamp Unix usano sempre UTC. Per la visualizzazione, converti al fuso orario locale. Usa identificatori IANA ("America/New_York") invece di abbreviazioni ("EST"). Memorizza in UTC, converti in locale solo per la visualizzazione.

Hai bisogno di convertire tra timestamp Unix e date leggibili? Prova il nostro convertitore di timestamp gratuito.

Suggerimento: usa sempre interi a 64 bit per memorizzare timestamp. In JavaScript, Date.getTime() restituisce millisecondi, non secondi. Dividi per 1000 quando interagisci con sistemi che si aspettano secondi.

Gestire i Fusi Orari

L'epoch Unix è il 1° gennaio 1970 alle 00:00:00 UTC. Serve come punto di riferimento per tutti i calcoli.

Insidie Comuni

I timestamp a 32 bit andranno in overflow il 19 gennaio 2038. I sistemi a 64 bit non affronteranno questo problema per 292 miliardi di anni.

Prova il Convertitore di Timestamp

Domande Frequenti

Cos'è l'Epoch Unix?

No, i timestamp Unix usano sempre UTC. Lo stesso timestamp rappresenta lo stesso momento in tutto il mondo.

I Timestamp Unix Si Esauriranno?

I timestamp standard misurano in secondi, JavaScript e alcune API usano millisecondi (1000x più grandi). 1700000000 secondi = 1700000000000 millisecondi.

I Timestamp Unix Sono Influenzati dai Fusi Orari?

Tecnicamente, i timestamp Unix ignorano i secondi intercalari. Ogni giorno è trattato come 86400 secondi esatti.

Differenza tra Secondi e Millisecondi?

Standard Unix timestamps measure seconds since the epoch, while JavaScript and some APIs use milliseconds. A millisecond timestamp is 1000 times larger. For example, 1700000000 seconds equals 1700000000000 milliseconds.

I Secondi Intercalari Influenzano i Timestamp Unix?

Technically, Unix timestamps ignore leap seconds. Every day is treated as having exactly 86400 seconds. This means Unix time can drift slightly from UTC when leap seconds are inserted, but in practice this rarely causes issues.