Perché bash ha un'opzione HISTCONTROL = ignorespace?


Risposte:


19

L'unica cosa per cui uso lo spazio iniziale è se voglio essere in grado di riavviare una riga di comando più vecchia che inizia con lo stesso comando ( !lsad esempio) e devo essere in grado di rieseguire quella precedente, ma non quella più recente.

L'altra volta che lo uso è nei casi (di rado) che do una password sulla riga di comando, piuttosto non ho quelli memorizzati nel .bash_historyfile una volta che esco bash.


3

Oltre ad Anthon: non è solo possibile evitare simili righe di comando nella storia, ma di tanto in tanto è necessario farlo: analizzo spesso i certificati OpenPGP nella shell. Ciò significa che nella console vengono lanciate 15 linee (a volte più). Lo fai alcune volte e la tua storia è piena. Ancora peggio: la cronologia non funziona bene se il comando copre l'intero schermo (bash). L'inizio del comando non viene visualizzato correttamente e quindi difficilmente può essere modificato.

Quindi tengo piuttosto breve una di queste righe di comando nella storia e blocco le altre.


Dovresti rendere illimitate le dimensioni della tua cronologia bash (numero di elementi o righe)export HISTFILESIZE=-1
altmas5

3

Preferirei non sapere quante volte ho giocato a gattonare !

A volte mi piace fare un history | awk '{print $2}' | sort -n | uniq -c | sort -n | tailper vedere i miei comandi più emessi. Voglio vedere una classifica in là di comandi che trovo interessanti (cose come ls, svn, p4, for, e cd) e mi sento meglio quando non vedo i giochi in quella lista. Quindi quando eseguo qualcosa che non voglio vedere in quell'elenco, lo prefisso con uno spazio.


1
Questo non risponde davvero al Q.
slm

2
Non lo so: è un uso valido della variabile (ed è espresso con un certo grado di umorismo e geek). Upvoted.
Jasonwryan,

puoi aggiungere i giochi che giochi a HISTIGNORE per evitare di inserirlo nel file della cronologia
theist
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.