Ou pour l'exprimer différemment, pourquoi voudriez-vous empêcher l'écriture de commandes dans l'historique bash?
(Inspiré d'une question connexe .)
bash
command-history
whitespace
LoicAG
la source
la source
Réponses:
La seule chose que j'utilise pour l'espace initial est si je veux pouvoir redémarrer une ancienne ligne de commande qui commence par la même commande (
!ls
par exemple) et j'ai besoin de pouvoir réexécuter l'ancienne, mais pas la plus récente.L'autre fois où je l'utilise, c'est dans les cas (rares) où je donne un mot de passe sur la ligne de commande, je préfère ne pas les avoir stockés dans le
.bash_history
fichier une fois que je quittebash
.la source
En plus d'Anthon: il n'est pas seulement possible d'éviter des lignes de commande similaires dans l'historique mais de temps en temps il y a un besoin de le faire: j'analyse souvent des certificats OpenPGP dans le shell. Cela signifie que 15 lignes (parfois plus) sont lancées dans la console. Vous faites cela plusieurs fois et votre histoire est pleine. Pire encore: l'historique ne fonctionne pas bien si la commande couvre tout l'écran (bash). Le début de la commande ne s'affiche pas correctement et peut donc difficilement être modifié.
Ainsi je garde une assez courte de ces lignes de commande dans l'historique et bloque les autres.
la source
export HISTFILESIZE=-1
Je préfère ne pas savoir combien de fois j'ai joué au crawl !
Parfois, j'aime faire un
history | awk '{print $2}' | sort -n | uniq -c | sort -n | tail
pour voir mes commandes les plus émises. Je veux voir un classement là - bas des commandes que je trouve intéressant ( des choses commels
,svn
,p4
,for
etcd
) et je me sens mieux quand je ne vois pas les jeux dans cette liste. Donc, quand je lance quelque chose que je ne veux pas voir dans cette liste, je le préfixe avec un espace.la source