Ich arbeite mit Mac OSX, also verwende ich wohl Bash…?
Manchmal gebe ich etwas ein, von dem ich nicht möchte, dass es in der Historie gespeichert wird. Wie entferne ich es?
Akzeptierte Antwort:
Präventive Maßnahmen
Wenn Sie einen Befehl ausführen möchten, ohne ihn im Verlauf zu speichern, stellen Sie ihm ein zusätzliches Leerzeichen voran
prompt$ echo saved
prompt$ echo not saved \
> # ^ extra space
Damit dies funktioniert, benötigen Sie entweder ignorespace
oder ignoreboth
in HISTCONTROL
. Führen Sie beispielsweise
HISTCONTROL=ignorespace
Um diese Einstellung dauerhaft zu machen, fügen Sie sie in Ihre .bashrc
ein .
Post-Mortem-Säuberung
Wenn Sie den Befehl bereits ausgeführt haben und ihn aus dem Verlauf entfernen möchten, verwenden Sie zuerst
history
um die Liste der Befehle in Ihrem Verlauf anzuzeigen. Suchen Sie die Nummer neben der Nummer, die Sie löschen möchten (z. B. 1234), und führen Sie sie aus
history -d 1234
Wenn die Zeile, die Sie löschen möchten, bereits in Ihre $HISTFILE geschrieben wurde (was normalerweise geschieht, wenn Sie eine Sitzung standardmäßig beenden), müssen Sie außerdem in $HISTFILE zurückschreiben, oder die Zeile wird erneut angezeigt, wenn Sie eine neue öffnen Sitzung:
history -w