Quando utilizziamo le distribuzioni Linux abbiamo a nostra disposizione centinaia di comandi che ci aiutano ad ottenere informazioni precise su servizi, processi, componenti di sistema e molto altro, tutto questo incentrato su una corretta gestione amministrativa e di supporto.
Uno di questi comandi è la data che viene utilizzata per ottenere la data e l'ora correnti del sistema selezionato:
INGRANDIRE
Ma più di questo, questo comando ci dà la possibilità di visualizzare o calcolare una data in un formato che specifichiamo o l'utente root può usarlo per configurare l'orologio del sistema operativo, se necessario.
Solvetic farà uno studio su questo comando e sui suoi modi di utilizzo in Linux.
1. Usa il comando date di base in Linux
Possiamo vedere nell'immagine sopra che quando viene eseguito solo il comando date senza parametri aggiuntivi, visualizzerà la data e l'ora del sistema corrente, incluso il giorno della settimana, il mese, l'ora, il fuso orario e l'anno.
Se vogliamo visualizzare i risultati in una data specifica, sarà necessario utilizzare il parametro -d e inserire la rispettiva data:
data -d "2018-01-15"
INGRANDIRE
Questo comando data ha più opzioni a livello di formato di visualizzazione. Ad esempio, sarà possibile indicare la data con la stringa di formato che la precede con un segno più come segue:
data + "Numero settimana:% V Anno:% y"Ciò risulterà nel numero della settimana corrente dell'anno corrente poiché% V è l'opzione di formato per visualizzare il numero della settimana corrente e% y rappresenta le ultime due cifre dell'anno.
INGRANDIRE
2. Opzioni di formato in data Linux
Alcune delle opzioni di formattazione più comuni quando si utilizza la data sono:
Si riferisce al nome abbreviato della settimana
%a
Indica il nome completo della settimana
%A
Nome breve del mese
% B
Nome completo del mese
% B
Visualizza la data e l'ora locali
% C
Visualizza il giorno del mese
% D
Ci mostra il giorno dell'anno in corso
% J
Rispecchia la data completa
%F
Indica i minuti trascorsi
% M
Ci permette di vedere i nanosecondi trascorsi
% N
Visualizza l'ora nel formato 24 ore
% R
Visualizza il numero della settimana prendendo il lunedì come primo giorno della settimana
% W
Visualizza il numero della settimana prendendo la domenica come primo giorno della settimana
%O
Per vedere le varie opzioni possiamo eseguire il seguente comando:
data -help
INGRANDIRE
3. Modifica il fuso orario corrente con il comando date Linux
Per impostazione predefinita, il comando date utilizza il fuso orario definito nella directory /etc/localtime. La variabile d'ambiente TZ (TimeZone) può essere utilizzata per sovrascrivere questo comportamento, possiamo controllare la TZ utilizzando il seguente comando:
TZ = data GMT
INGRANDIRE
Tutti i fusi orari validi si trovano nella directory /usr/share/zoneinfo/:
INGRANDIRE
Alcuni esempi di come possiamo usare il comando date per definire determinati orari sono:
Ora
data -d adesso
In data odierna
data -d oggi
Ieri
data -d ieri
Domani
data -d domani
Domenica prossima
data -d domenica
Domenica scorsa
data -d ultima-domenica
INGRANDIRE
Altre opzioni che possiamo usare
- la settimana scorsa
- la prossima settimana
- lo scorso mese
- il prossimo mese
- l'anno scorso
- l'anno prossimo
4. Utilizzo dei secondi con il comando date Linux
L'utilizzo del comando date ci consente di eseguire un altro tipo di analisi, ad esempio possiamo utilizzare il comando date per convertire una certa data o ora nell'ora dell'era Unix (secondi da 00:00:00, 1 gennaio 1970) e viceversa, in questo caso, eseguiremo quanto segue con il quale vedremo i secondi di epoca all'ora corrente:
data +% sIl risultato sarà il seguente:
INGRANDIRE
Utilizzando questo stesso formato possiamo ottenere i secondi di una certa data, ad esempio:
data -d "31/12/2017" + "% s"
INGRANDIRE
5. Come convertire epoch in una data Linux
Ricorda che epoch è il formato dell'ora UNIX.
Con date è possibile convertire epoch in una data specifica utilizzando uno dei seguenti comandi:
data -d "UTC 2000-01-15 123456897 secondi" data -d @ 123456897
INGRANDIRE
Allo stesso modo, abbiamo la possibilità di conoscere il giorno esatto di qualsiasi data con la seguente riga:
data -d "2000-01-15" + "% A"
INGRANDIRE
Imposta una data manualmente e usa il comando date in Script e Comandi Quando è necessario impostare una data o un'ora diversa da quella corrente, è sufficiente eseguire la seguente sintassi:
data --set = "AAAAMMGG HH: SS"È possibile assegnare il risultato del comando date ad una variabile di shell e quindi utilizzarlo in seguito in vari script, ad esempio possiamo eseguire quanto segue:
STARTTIME = `data` echo $ STARTTIME sleep 7 echo $ STARTTIME
Possiamo vedere come il comando date ci consente di eseguire azioni ben oltre la semplice visualizzazione della data e dell'ora correnti.