Introduzione
Linux date comando visualizza e imposta la data e l'ora del sistema. Questo comando consente inoltre agli utenti di stampare l'ora in diversi formati e calcolare le date future e passate.
Continua a leggere per scoprire come utilizzare la date comando in Linux.
Prerequisiti
- Un sistema che esegue Linux
- Un account utente con privilegi di root
- Accesso a una finestra di terminale/riga di comando
Sintassi del comando data di Linux
La sintassi per la date il comando è:
date [option]... [+format] Come utilizzare il comando date in Linux
Per mostrare l'ora e la data correnti del sistema, digita la date comando:
date
L'output visualizza il giorno della settimana, il giorno del mese, il mese, l'anno, l'ora corrente e il fuso orario. Per impostazione predefinita, la date comando è impostato sul fuso orario del sistema operativo.
Il -d l'opzione consente agli utenti di operare in una data specifica. Ad esempio, possiamo digitare il seguente comando:
date -d "2000-11-22 09:10:15"
Puoi utilizzare il --date comando per visualizzare la stringa di data specificata nel formato di una data. Questo comando non influisce sui valori di data e ora effettivi del sistema e stampa solo la data richiesta. Ad esempio:
date --date="09/10/1960"
Opzioni formato comando data Linux
Per formattare la date output del comando, puoi utilizzare i caratteri di controllo preceduti da un + cartello. I controlli del formato iniziano con il % simbolo e sono sostituiti dai loro valori correnti.
Qui, il %Y il carattere viene sostituito con l'anno corrente, %m con mese e %d con il giorno del mese:
date +"Year: %Y, Month: %m, Day: %d"
Ecco altri due esempi di formattazione:
date "+DATE: %D%nTIME: %T" 
date +"Week number: %V Year: %y"
Questi sono i caratteri di formattazione più comuni per la date comando:
%D– Visualizza la data come mm/gg/aa%Y– Anno (ad es. 2020)%m– Mese (01-12)%B– Nome del mese lungo (ad es. Novembre)%b– Nome breve del mese (ad es. Nov)%d– Giorno del mese (es. 01)%j– Giorno dell'anno (001-366)%u– Giorno della settimana (1-7)%A– Nome completo del giorno della settimana (ad es. venerdì)%a– Nome breve del giorno della settimana (ad es. Ven)%H– Ora (00-23)%I– Ora (01-12)%M– Minuti (00-59)%S– Secondo (00-60)
Per vedere tutte le opzioni di formattazione, esegui date --help o il comando man man date nel tuo terminale.
Imposta o modifica la data in Linux
Per modificare manualmente l'orologio di sistema, utilizzare il comando set. Ad esempio, per impostare la data e l'ora su 17:30, 13 maggio 2010 , digita:
date --set="20100513 05:30"
La maggior parte delle distribuzioni Linux ha l'orologio di sistema sincronizzato utilizzando il ntp o il systemd-timesyncd servizi, quindi fai attenzione quando imposti l'orologio manualmente.
Visualizza le date passate
Usa il --date opzione per visualizzare le date passate in Linux. La date il comando accetta valori come "tomorrow" , "Friday" , "last Friday" , "next Friday" , "next week" , e simili. Quindi, usa le seguenti stringhe per stampare le date passate::
date --date="2 year ago" 
date --date="yesterday" 
date --date="10 sec ago"
Visualizza date future
Il --date l'opzione può anche visualizzare le date future. Come con le date passate, puoi digitare stringhe per stampare le date imminenti:
date --date="next monday" 
date --date="4 day" 
date --date="tomorrow"
Visualizza la stringa della data nella riga del file
Il --file opzione stampa la stringa di data presente in ogni riga del file. A differenza del --date opzione, --file può presentare più stringhe di data su ogni riga.
Questa è la sintassi per il --file comando:
date --file=file_name.txt Qui usiamo il comando cat per aggiungere date a un file e poi stamparle con il comando date:
Visualizza il timestamp dell'ultima modifica di un file di data
Quando usi il -r opzione, la date comando stampa l'ora dell'ultima modifica di un file. Ad esempio, il comando seguente viene stampato l'ultima volta che è stato modificato il file hosts:
date -r /etc/hosts
Sostituisci un fuso orario
Per impostazione predefinita, la date comando utilizza il fuso orario definito in /etc/localtime . Per utilizzare un fuso orario diverso nell'ambiente, imposta il TZ variabile al fuso orario desiderato.
Ad esempio, per passare all'ora di New York, inserisci:
TZ='America/New_York' date
Digita la date comando per riportare il sistema al fuso orario predefinito. Per vedere tutti i fusi orari disponibili, utilizza il timedatectl list-timezones comando.
La date il comando può anche mostrare l'ora locale per un fuso orario diverso. Ad esempio, per visualizzare l'ora locale per le 16:30 di lunedì prossimo sulla costa orientale australiana, digitare:
date -d 'TZ="Australia/Sydney" 04:30 next Monday'
Utilizza la data con altri comandi
Puoi utilizzare la date comando per creare nomi di file che contengono l'ora e la data correnti. L'input seguente crea un file MySQL di backup nel formato della data corrente:
mysqldump database_name > database_name-$(date +%Y%m%d).sql
Un altro uso comune della date il comando è negli script della shell. Di seguito assegniamo l'output di date al date_now variabile:
date_now=$(date "+%F-%H-%M-%S")
Usa Unix Epoch Time (Epoch Converter)
Puoi utilizzare la date comando come convertitore Epoch. Epoch, o timestamp Unix, è il numero di secondi trascorsi dal 1 gennaio 1970 alle 00:00:00 UTC.
Per mostrare il numero di secondi dall'epoca al giorno corrente, usa il %s controllo del formato:
date +%s
Per vedere quanti secondi sono passati dall'epoca a una data specifica, inserisci:
$ date -d "1984-04-08" +"%s"