Come posso generare timestamp UNIX in Linux

Come posso generare timestamp UNIX in Linux
In Timestamp Unix rappresentiamo qualsiasi data e ora insieme in un singolo numero lungo. Questo singolo numero descrive i secondi totali passati dal 1 gennaio 1970 alle 00:00:00 UTC. In questa guida, tratteremo tutto sulla conversione dei timestamp UNIX in date, tra cui quali sono i timestamp UNIX, come convertirli in una data e alcuni esempi pratici per aiutarti a iniziare.

Il contenuto per questo articolo è:

  • Cos'è un timestamp unix?
  • Come convertire il timestamp unix fino ad oggi
  • Metodo 1: utilizzando il comando della data
    • Esempio 1: convertire un timestamp UNIX in una data e ora in un fuso orario specifico
    • Esempio 2: convertire un timestamp Unix in una data
  • Metodo 2: usando il linguaggio di programmazione perl
  • Metodo 3: usando il linguaggio di programmazione Python
  • Metodo 4: usando uno script bash
  • Conclusione

Cos'è un timestamp unix

Un timestamp unix mostra un singolo numero che corrisponde a data e ora. Questo singolo numero mostra i secondi totali passati dal 1 ° gennaio 1970 alle 00:00:00 UTC. Abbiamo anche chiamato questo singolo numero di tempo il Epoca unix. I timestamp UNIX sono usati in molti linguaggi di programmazione diversi per rappresentare date e tempi in qualsiasi fuso orario.

Come convertire il timestamp unix fino ad oggi

In Linux ci sono metodi diversi per convertire un timestamp unix in una data o viceversa. In questo articolo inizieremo dal metodo di base che utilizza il comando data nella finestra del terminale.

  • Utilizzando il comando della data
  • Utilizzando il linguaggio di programmazione Perl
  • Usando il linguaggio di programmazione Python
  • Usando uno script bash

Metodo 1: utilizzando il comando della data

Per convertire un timestamp UNIX in una data e ora leggibili dall'uomo, possiamo usare il comando della data nel terminale. La sintassi per il comando data è la seguente:

data -d @

Ad esempio, per convertire un timestamp UNIX di 1676865654 in una data e ora leggibili dall'uomo, eseguire il seguente comando:

Data -d @1676865654

Come puoi vedere, l'output include i dettagli completi della data e dell'ora corrente, incluso il fuso orario e l'anno.

Allo stesso modo, possiamo anche generare valore timestamp per una data specifica. Ad esempio, il valore del timestamp per il 1 gennaio 2023, alle 12:00:00 può essere utilizzato il seguente comando:

Data -D "2023-01-01 00:00:00 +%s

Il comando seguente restituirà i timestamp UNIX per la data corrente in formato nanosecondi:

Data +%s%n

Esempio 1: convertire un timestamp UNIX in una data e ora in un fuso orario specifico

Per convertire un timestamp UNIX in una data e ora in un fuso orario specifico, verrà seguita la sintassi dei comandi seguenti:

Tz = data -d @

Ad esempio, per convertire un timestamp UNIX di 1613475901 in una data e ora leggibili dall'uomo nel fuso orario orientale, eseguire sotto il comando:

TZ = America/New_York Date -d @1676865654

Esempio 2: convertire un timestamp Unix in una data

Per convertire un timestamp UNIX in una sola data, è possibile utilizzare il seguente comando:

data -d @ +'%Y-%m-%d'

Ad esempio, se abbiamo un timestamp UNIX di 1613475901 e per convertirlo nel formato del mese di mese (E.G. 2023-02-20) Possiamo usare il comando seguente:

Data -d @ 1676865654 +'%y-%m-%d'

Ciò emetterà la data corrispondente al timestamp UNIX di 1613475901:

Metodo 2: usando il linguaggio di programmazione perl

Perl è un linguaggio di programmazione popolare che può essere utilizzato per generare timestamp UNIX in Linux.

Apri un editor Nano usando:

nano

Ora crea un semplice script Perl che genera un timestamp unix per la data e l'ora correnti:

#!/usr/bin/perl
tempo di stampa ();

Premere Ctrl + O, quindi salvare questo script come "timestamp.pl"E premi Invio, quindi premi Ctrl + X per salvare ed uscire:

Ora rendi questo eseguibile eseguendo:

CHMOD +X Timestamp.pl

Esegui lo script con il comando "./timestamp.PL ”per generare un timestamp UNIX:

Metodo 3: usando il linguaggio di programmazione Python

Python è un altro linguaggio di programmazione popolare che può essere utilizzato per generare timestamp UNIX in Linux.

Innanzitutto, dobbiamo installare Python3 su Linux, per eseguire quel comando Esegui:

SUDO APT Installa Python3

Ora Open Nano Editor usando:

nano

Crea un semplice script Python che genera un timestamp UNIX per la data e l'ora correnti:

#!/usr/bin/pithon3
tempo di importazione
Stampa (int (tempo.tempo()))

Premere Ctrl + O, quindi salvare questo script come "timestamp.Py"E premi Invio, quindi premi Ctrl + X per salvare ed uscire.

Lo script sopra può essere reso eseguibile dal comando di seguito:

CHMOD +X Timestamp.Py

Esegui lo script con il comando "./timestamp.py "per generare un timestamp unix.

Metodo 4: usando uno script bash

Se è necessario generare timestamp UNIX in modo più complesso o automatizzato, è possibile utilizzare uno script bash.

Apri l'editor Nano usando:

nano

Scrivi il seguente script nell'editor che genera un timestamp unix per la data e l'ora correnti:

#!/Bin/Bash
Echo $ (data +%s)

Premere Ctrl + O, quindi salvare questo script come "timestamp.sh"E premi Invio, quindi premi Ctrl + X per salvare ed uscire:

Ora rendere eseguibile questo script eseguendo il comando:

CHMOD +X Timestamp.sh

Esegui lo script con il comando "./timestamp.sh "per generare un timestamp unix:

Conclusione

I timestamp UNIX mostrano secondi totali passati dal 1 gennaio 1970. Per generare timestamp UNIX in Linux, il comando Date può essere utilizzato nella riga di comando passando l'argomento +%s. In alternativa, possiamo anche creare uno script bash o utilizzare lo script di lingua perle e python per darci timestamp per la data e il fuso orario esatti.