In Bash weiß ich, dass das Setzen eines Leerzeichens vor einem Befehl verhindert, dass es in der Historie gespeichert wird. Was ist das Äquivalent für die zshell?
command-line
zsh
linux-terminal
bneil
quelle
quelle
Antworten:
Verwenden Sie die Option HIST_IGNORE_SPACE.
quelle
kill -9 $$
Es ist in der Tat fantastisch zu vermeiden, dass alle in der aktuellen Terminalsitzung ausgegebenen Befehle im Verlauf gespeichert werden.unset HISTFILE
vor deinem Befehlsblock stehen . Sie müssen danach zurücksetzenHISTFILE
oder eine neue Shell öffnen, um die gewünschten Befehle in Ihrem Verlauf zu speichern.Wenn Sie eine genauere Kontrolle darüber wünschen, was zur ZSH-Historie hinzugefügt wird, können Sie die
zshaddhistory
Funktion in definieren.zshrc
. Die folgende Definition verwendet einen regulären Ausdruck, um ein zu ignorierendes Muster zu definieren:Beachten Sie, dass das Verhalten von
man zshopts
unterHIST_IGNORE_SPACE
noch vorhanden ist:Um es zu testen, müsste man ein Extra treffen
[Enter]
. Dadurch wird der Befehl sowohl aus der Ausgabe vonhistory
als auch aus der ↑ Pfeilhistorie entfernt.quelle