il date
Il comando è nella shell bash, che è la shell predefinita sulla maggior parte delle distribuzioni Linux e persino su macOS. Questo tutorial ti mostra come padroneggiare date
sulla riga di comando e come puoi usarlo negli script di shell per fare di più che stampare l'ora.
Corri il date
comando per visualizzare queste informazioni. Stampa la data e l'ora correnti per il tuo fuso orario:
Data
Il formato predefinito sembra un po' ridicolo. Perché l'anno non viene stampato dopo il mese e il giorno?, invece di essere taggato alla fine, dietro il fuso orario? Non preoccuparti: se quello che vuoi è controllare il formato di output, date
lo consegna con. C'è di più 40 opzioni a cui puoi andare date
per istruirti a formattare l'output esattamente come desideri.
Per utilizzare una qualsiasi delle opzioni, scriba date
, Uno spazio, un segno più +
, e l'opzione anche il segno di percentuale principale. il %c
(dati e ora in formato locale) fa in modo che la data e l'ora vengano stampate nel formato standard associato alla tua lingua. La tua localizzazione è determinata dalle informazioni geografiche e culturali che hai fornito quando hai installato il tuo sistema operativo.. Luogo regole cose come il simbolo di valuta, il formato della carta, fuso orario e altre norme culturali.
data +%c
L'anno appare ora in una posizione più naturale nella produzione.
Puoi passare varie opzioni a date
al momento. Una sequenza di opzioni è chiamata stringa di formato. Per vedere il nome del giorno (%A
), il giorno del mese (%d
) e il nome del mese (%B
), usa questo comando:
data +%A%d%B
Ha funzionato, ma è brutto. Nessun problema, possiamo includere spazi a patto di racchiudere l'intera stringa di formato tra virgolette. Nota che il +
volere al di fuori le virgolette.
Data +"%A %d %B"
Puoi aggiungere del testo alla stringa di formato, Così:
Data +"Oggi è: %A %d %B"
Scorri su e giù per date
pagina man la ricerca dell'opzione desiderata diventa presto noiosa. Abbiamo diviso le opzioni in gruppi per aiutarti a trovare la strada più facilmente.
Opzioni per visualizzare la data e l'ora
- %C: Stampa la data e l'ora nel formato delle tue impostazioni internazionali, compreso il fuso orario.
Opzioni per la visualizzazione della data
- %D: Stampa la data in formato mm / dd / aa.
- %F: Stampa la data nel formato aaaa-mm-gg.
- %X: Stampa la data nel tuo formato locale.
Opzioni per visualizzare il giorno
- %un: Stampa il nome del giorno, abbreviato come Mon, Mar, mer, eccetera.
- %UN: Stampa il nome completo del giorno, lunedi martedì, mercoledì, eccetera.
- % tu: Stampa il numero del giorno della settimana, dove lunedì = 1, martedì = 2, mercoledì = 3, eccetera.
- % w: Stampa il numero del giorno della settimana, dove domenica = 0, lunedì = 1, martedì = 2, eccetera.
- %D: Stampa il giorno del mese, con uno zero iniziale (01, 02… 09) se richiesto.
- %me: Stampa il giorno del mese, con uno spazio principale ('1', '2'... '9') se richiesto. Si prega di notare che gli apostrofi non vengono stampati.
- % J: Stampa il giorno dell'anno, con un massimo di due zeri iniziali, se richiesto.
Opzioni per visualizzare la settimana
- % tu: Stampa il numero della settimana dell'anno, considerando la domenica come primo giorno della settimana. Ad esempio, la terza settimana dell'anno, la ventesima settimana dell'anno, eccetera.
- % V: Stampa il numero della settimana ISO dell'anno, considerando il lunedì come primo giorno della settimana.
- % W: Numero della settimana dell'anno, considerando il lunedì come primo giorno della settimana.
Opzioni per visualizzare il mese
- %B oh % h: Stampa il nome del mese abbreviato in gennaio, febbraio, marzo, eccetera.
- %B: stampa il nome completo del mese, gennaio, febbraio, marzo, eccetera.
- %Metro: Stampa il numero del mese, con uno zero iniziale se necessario 01, 02, 03… 12.
Opzioni per visualizzare l'anno
- %C: Stampa il secolo senza l'anno. Sopra 2019 stamperebbe 20.
- % e: Stampa l'anno in due cifre. Su 2019 stamperà 19.
- % E: Stampa l'anno con quattro cifre.
Opzioni per visualizzare l'ora
- % T: Stampa l'ora come HH: MM: SS.
- % R: Stampa l'ora e i minuti come HH: MM senza secondi, usando l'orologio 24 ore.
- % R: Stampa l'ora in base alla tua posizione, usando l'orologio 12 ore e un indicatore di mattina o pomeriggio.
- %X: Stampa l'ora in base alla tua posizione, usando l'orologio 24 ore. presumibilmente. Nota che durante il test questa opzione si è comportata esattamente come
%r
fa, come mostrato di seguito. Su una macchina Linux configurata per la locale del Regno Unito e impostata su GMT, stampato il tempo, usando l'orologio 24 ore senza indicatore AM o PM, come previsto.
Opzioni per visualizzare l'ora
- % h: Stampa l'ora 00, 01, 02… 23.
- %io: Stampa l'ora usando l'orologio 12 ore, 00, 01, 02… 12, con uno zero iniziale se necessario.
Opzioni per visualizzare i minuti
- %METRO: stampa il minuto, 01, 02, 03… 59, con uno zero iniziale se necessario.
Opzioni per mostrare i secondi
- %S: Stampa il numero di secondi trascorsi 1970-01-01 00:00:00, l'inizio del Era Unix.
- %S: Stampa i secondi, 01, 02, 03… 59, con uno zero iniziale se necessario.
- %NORD: Stampa i nanosecondi.
Opzioni per la visualizzazione delle informazioni sul fuso orario
- % Insieme a: Stampa la differenza di orario tra il tuo fuso orario e UTC.
- %: Insieme a: Stampa la differenza di orario tra il tuo fuso orario e UTC, con un: tra ore e minuti. Notare la
:
Tra i%
segno ez
. - % :: Insieme a: Stampa la differenza di orario tra il tuo fuso orario e UTC, con un: tra le ore, i minuti e i secondi. Notare la
::
Tra i%
segno ez
. - % INSIEME A: Stampa il nome alfabetico del fuso orario.
Opzioni relative al formato
- %pagina: Stampa l'indicatore AM o PM in maiuscolo.
- %PAG: Stampa l'indicatore del mattino o del pomeriggio in minuscolo. Notare la particolarità di queste due opzioni. Una minuscola
p
uscite in maiuscolo, una lettera maiuscolaP
uscite minuscole. - % T: Stampa una scheda.
- %Nord: Stampa una nuova riga.
Opzioni per modificare altre opzioni
Questi modificatori possono essere inseriti tra i %
e la lettera di opzione di altre opzioni per modificare la loro visualizzazione. Ad esempio, %-S
rimuoverebbe lo zero iniziale per i valori dei secondi a una cifra.
- –: Un singolo trattino impedisce il riempimento zero nei valori a una cifra.
- _: un semplice carattere di sottolineatura aggiunge spazi iniziali per i valori a una cifra.
- 0: Fornisce zeri iniziali per valori a una cifra.
- ^: Usa lettere maiuscole, se possibile (non tutte le opzioni rispettano questo modificatore).
- #: Utilizzare il caso opposto al valore predefinito per l'opzione, se possibile (non tutte le opzioni rispettano questo modificatore).
Altri due trucchi ingegnosi
Per ottenere l'ultima volta che si modifica un file, Utilizzare il -r
(riferimento) opzione. Si noti che questo utilizza un -
(sceneggiatura) invece di un %
segno, e non richiede un +
segno. Provare questo comando nella cartella Inizio:
date -r .bashrc
Le impostazioni TZ consentono di modificare il fuso orario per la durata di un singolo comando.
TZ=GMT data +%c
Utilizzo della data negli script
Abilitare uno script di shell Bash per stampare l'ora e la data è banale. Creare un file di testo con il seguente contenuto e salvarlo con nome gd.sh
.
#!/bin/bash TODAY=$(Data +"Oggi è %A, %d di %B") TIMENOW=$(Data +"L'ora locale è %r") TIME_UK=$(TZ=Data BST +"Il tempo nel Regno Unito è %r") echo $TODAY echo $TIMENOW echo $TIME_UK
Escriba el siguiente comando para establecer los permisos de ejecución y hacer que el script sea ejecutable.
chmod +x gd.sh
Esegui lo script con questo comando:
./gd.sh
Possiamo usare il comando date per fornire un timestamp. Lo script mostrato creerà una directory con il timestamp come nome. Quindi copierà tutti i file di testo dalla cartella corrente ad essa. Eseguendo questo script periodicamente, possiamo scattare un'istantanea dei nostri file di testo. Col tempo, creeremo una serie di cartelle con diverse versioni dei nostri file di testo.
Tenga en cuenta que este no es un sistema de copia de seguridad sólido, es solo para fines ilustrativos.
Creare un file di testo con il seguente contenuto e salvarlo con nome snapshot.sh.
#!/cestino/bash # obtain the date and time date_stamp=$(Data +"%F-%H-%M-%S") # make a directory with that name mkdir "$date_stamp" # copy the files from the current folder into it cp *.txt "$date_stamp" # Tutto fatto, report back and exit echo "File di testo copiati nella directory: "$date_stamp
Escriba el siguiente comando para establecer los permisos de ejecución y hacer que el script sea ejecutable.
chmod +x snapshot.sh
Esegui lo script con questo comando:
./snapshot.sh
Verá que se ha creado un directorio. Su nombre es la fecha y hora en que se ejecutó el script. All'interno di quella directory ci sono copie dei file di testo.
Con un po' di pensiero e creatività, anche gli umili date
Il comando può essere utilizzato in modo produttivo.
impostaTimeout(funzione(){
!funzione(F,B,e,v,n,T,S)
{Se(f.fbq)Restituzione;n=f.fbq=funzione(){n.callMethod?
n.callMethod.apply(n,argomenti):n.queue.push(argomenti)};
Se(!f._fbq)f._fbq = n;n.push=n;n.loaded=!0;n.version='2.0′;
n.coda=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(T,S) } (window, documento,'copione',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('dentro', '335401813750447');
fbq('traccia', 'Visualizzazione della pagina');
},3000);