Come eseguire un comando Linux senza salvarlo nella cronologia

instagram story viewer

Per impostazione predefinita, ogni comando che esegui sul tuo terminale è memorizzato dalla shell (interprete dei comandi) in un determinato file chiamato storia cronologia dei comandi di file o shell. In Bash (il conchiglia più popolare su sistemi Linux), per impostazione predefinita, il numero di comandi persistenti nella cronologia è 1000, e alcuni distribuzioni Linux avere 500.

Per controllare il tuo storia size in Bash, esegui questo comando:

$ eco $HISTSIZE. 
Controlla la dimensione della cronologia di Linux
Controlla la dimensione della cronologia di Linux

Per vedere i comandi precedenti che hai eseguito, puoi usare il file comando di storia per visualizzare la cronologia dei comandi della shell:

$ storia. 
Controlla la cronologia dei comandi di Linux
Controlla la cronologia dei comandi di Linux

A volte, potresti voler disabilitare la shell dalla registrazione dei comandi nella sua cronologia dei comandi. Puoi farlo come segue.

Elimina un comando Linux dalla cronologia dopo l'esecuzione

È possibile eliminare un comando immediatamente dalla cronologia della shell dopo averlo eseguito sulla riga di comando aggiungendo l'estensione cronologia -d $(cronologia 1) comando ad esso.

Il $(cronologia 1) il sottocomando recupera l'ultima voce nella cronologia nella sessione del terminale corrente, dove 1 è l'offset e il -d l'opzione aiuta a eliminarlo.

Qualsiasi comando eseguito normalmente viene salvato nella cronologia della shell.

$ echo "Questo comando è salvato nella cronologia" $ storia | coda.
Visualizza la cronologia dei comandi di Linux
Visualizza la cronologia dei comandi di Linux

Tuttavia, quando aggiungi il cronologia -d $(cronologia 1) comando su una riga di comando, viene immediatamente eliminato dalla cronologia della shell come mostrato nella schermata seguente:

$ echo "Questo comando non è stato salvato nella cronologia";history -d $(history 1) $ storia | coda.
Elimina la cronologia dei comandi di Linux dopo l'esecuzione
Elimina la cronologia dei comandi di Linux dopo l'esecuzione

Un altro modo per impedire alla shell di salvare un comando nella cronologia è farlo prefisso il comando con uno spazio. Ma questo dipende completamente dal valore del $CONTROLLO STORICO variabile shell definita in ~/.bashrc File di avvio di Bash. Dovrebbe essere impostato per avere uno di questi valori: ignorespace o ignora entrambi, affinché questo metodo funzioni.

Puoi controllare il valore di $CONTROLLO STORICO variabile come mostrato.

$ eco $CONTROLLO STORICO. O. $ gatto ~/.bashrc | grep $HISTCONTROL. 
Controllare la variabile HISTCONTROL
Controllare la variabile HISTCONTROL

Se è impostata la suddetta variabile di shell, qualsiasi comando con prefisso uno spazio non viene salvato nella cronologia:

$ echo "Questo comando non è preceduto da spazio, verrà salvato nella cronologia!" $ echo "Questo comando è preceduto da spazio, non verrà salvato nella cronologia!"
Non salvare il comando Linux nella cronologia
Non salvare il comando Linux nella cronologia

Ecco alcuni altri articoli interessanti sul Bash storia e storia comandi:

  • 2 modi per rieseguire gli ultimi comandi eseguiti in Linux
  • Come cancellare la cronologia della riga di comando BASH in Linux
  • Imposta data e ora per ogni comando che esegui nella cronologia di Bash

Per ora è tutto! Usa il modulo di commento qui sotto per condividere con noi le tue opinioni su questo argomento. Alla prossima volta, resta con noi.

Teachs.ru