GNU/Linux >> Linux Esercitazione >  >> Linux

Cronologia di Bash:come visualizzare un timestamp (data/ora) quando ogni comando è stato eseguito

Accanto a ogni tuo comando. aggiungi un timestamp (data e ora) Storia di Bash? Questo può essere fatto con il HISTTIMEFORMAT Bash variabile.

Bash salva una cronologia dei comandi digitati, a cui puoi accedere toccando history . Per impostazione predefinita, vedrai un numero seguito dai comandi che hai usato di recente:

$ history
1889  cd Cloaker/
1890  ./Cloaker.run
1891  sudo apt upgrade
1892  sudo apt autoremove
1893  history

Con l'aiuto di HISTTIMEFORMAT È possibile utilizzare la variabile bash per visualizzare la data e l'ora in cui è stato eseguito ciascun comando. Questo può essere utile in varie occasioni, come ricordare quali comandi hai eseguito in un determinato periodo di tempo, annullare varie operazioni e così via.

Vale la pena notare che quando questa variabile è impostata, i timestamp vengono scritti nel file di cronologia in modo che vengano mantenuti tra le sessioni della shell. Quindi la prima volta che lo attivi, non vedrai la data e l'ora corrette per i comandi utilizzati in precedenza.

Un altro miglioramento della cronologia di bash che potrebbe piacerti:HSTR semplifica la ricerca di bash o cronologia comandi zsh

Imposta la cronologia di bash in modo che mostri un timestamp per la cronologia dei comandi (solo per la sessione del terminale corrente) con questo comando:

HISTTIMEFORMAT="%F %T "

Questo comando si applica solo a questa sessione, quindi puoi vedere come appare e, facoltativamente, configurare il formato di data e ora (vedi sotto).

Inserisci ora history e dovresti vedere il timestamp per i comandi della cronologia di bash:

$ history
2027  2019-07-12 13:02:31 sudo apt update
2028  2019-07-12 13:02:33 history
2029  2019-07-12 13:03:35 HISTTIMEFORMAT="%F %T "
2029  2019-07-12 13:03:38 man date
2030  2019-07-12 13:03:55 history


Abbiamo esportato HISTTIMEFORMAT con il seguente timestamp:

  • %F :data completa (anno-mese-data)
  • %T :Ora (ora:minuti:secondi)


C'è uno spazio dopo %T e prima di " in modo che ci sia uno spazio nella cronologia di bash tra l'esecuzione del comando e il comando stesso. Senza di lei, i due non si sarebbero separati.

È possibile regolare la data e l'ora. Usa HISTTIMEFORMAT="%Y/%m/%d %T " per visualizzare la data come anno (4 cifre) -mese-giorno e l'ora come ora (00..24):minuti:secondi. Visualizza la data come mese/giorno/anno (2 cifre) con %m/%d/%y . Vuoi visualizzare l'ora come 00..12 seguito da AM / PM invece di 00..24? Usa %I:%M:%S %p come formato dell'ora. Vedere il comando Data come formattare ulteriormente la data e l'ora.

Ora è il momento di esportare HISTTIMEFORMAT dal tuo ~/.bashrc File per impostarlo come predefinito per tutte le nuove sessioni di terminale per il tuo utente . Puoi sia il tuo. per aprire ~/.bashrc File con un editor di testo e incollare export HISTTIMEFORMAT="%F %T " (o un altro formato di data e ora) di seguito, quindi salva il file o esegui questo comando per convertirlo nel tuo. per scrivere ~/.bashrc :

echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc

Esegui questo comando solo una volta poiché aggiunge export HISTTIMEFORMAT="%F %T " a ~/.bashrc ogni volta che lo esegui.

Dopodiché, tutto ciò che devi fare è eseguire il ~/.bashrc File in modo che la sessione del terminale corrente utilizzi le nuove impostazioni (oppure puoi aprire un nuovo terminale che rileverà automaticamente il nuovo HISTTIMEFORMAT le impostazioni):

source ~/.bashrc

Ricorda, la prima volta che abiliti i timestamp nella cronologia di bash, non vedrai una data / ora per nessuno dei tuoi comandi utilizzati in precedenza. Solo i comandi eseguiti dopo che hai abilitato i timestamp per la cronologia di bash visualizzeranno una data e un'ora all'inizio della riga.

Penso che ti piacerà anche:z.lua – A Faster Way Of Changed Directory (comando cd che impara mentre lo usi)


Linux
  1. Trucchi della riga di comando:come identificare la data e l'ora di un'esecuzione di un comando Unix

  2. Come visualizzare la data e l'ora di riavvio del sistema Linux

  3. CentOS / RHEL:come visualizzare i comandi eseguiti nell'output del comando della cronologia di yum

  4. CentOS / RHEL:come ottenere la data e l'ora del comando eseguito nell'output del comando della cronologia

  5. Come ottenere la data/ora di creazione del file in Bash/Debian?

Come abilitare il timestamp nell'output del comando della cronologia di Linux

Comando della cronologia in Linux (Cronologia di Bash)

Come visualizzare la cronologia di Bash senza numeri di riga

Come abilitare il timestamp nella cronologia di Bash in Linux

Come utilizzare il comando Date negli script Bash in Linux

Come disabilitare la modifica della mia cronologia in bash