Manchmal führen wir Bash-Befehle mit vertraulichen Informationen aus. Beispiel:Ausführen eines Shell-Skripts und Übergeben von Kennwörtern als Befehlszeilenargumente. In diesem Fall ist es aus Sicherheitsgründen besser, den Bash-Verlauf zu löschen.
Bash-Verlauf unter Linux löschen
Wenn wir einen Befehl in der Bash-Shell ausführen, wird er in .bash_history gespeichert Datei, die sich im Home-Verzeichnis des Benutzers befindet. Wir können den history verwenden Befehl, um alle Befehle aus dieser Datei zu drucken. Es gibt Optionen zum Löschen des gesamten Verlaufs oder eines bestimmten Befehls aus dem Bash-Verlauf.
1. Löschen Sie den Bash-Verlauf, um alle Befehle zu entfernen
Wenn Sie den Bash-Verlauf vollständig entfernen möchten, können Sie history -c ausführen Befehl.
# history
...
737 history
738 vi .bash_history
739 cd
740 history
# history -c
# history
1 history
#
2. Einen bestimmten Befehl aus dem Bash-Verlauf entfernen
Wenn Sie einen bestimmten Eintrag aus dem Bash-Verlauf entfernen möchten, verwenden Sie to history -d offset Befehl. Der Offset ist die Zeilennummer aus der Ausgabe der history Befehl.
[root@li1176-230 ~]# ls -1 | wc -l
3
[root@li1176-230 ~]# history
1 history
2 ls
3 cd
4 ls -1 | wc -l
5 history
[root@li1176-230 ~]# history -d 4
[root@li1176-230 ~]# history
1 history
2 ls
3 cd
4 history
5 history -d 4
6 history
[root@li1176-230 ~]#
So löschen Sie den Bash-Verlauf in Mac OS
Wenn Sie eine einfache Bash-Shell verwenden, können Sie die Option -d oder -c verwenden, um den Bash-Verlauf zu entfernen.
bash-3.2$ history
1 history
2 cd
3 ls
4 pwd
5 history
bash-3.2$ history -d 4
bash-3.2$ history
1 history
2 cd
3 ls
4 history
5 history -d 4
6 history
bash-3.2$ history -c
bash-3.2$ history
1 history
bash-3.2$
ZSH Verlauf löschen
ZSH ist heutzutage sehr beliebt. Es baut auf der Bash-Shell auf und bietet viele zusätzliche Funktionen, um Entwicklern zu helfen. Leider funktionieren die obigen Verlaufsbefehle nicht zum Löschen des ZSH-Shell-Verlaufs. Das liegt daran, dass der ZSH-Verlauf in ~/.zsh_history gespeichert wird Datei. Wenn Sie einen Eintrag entfernen möchten, öffnen Sie diese Datei in VIM oder einem anderen Editor, löschen Sie den Eintrag manuell aus der Datei und speichern Sie ihn.
Hinweis :Der zsh-Verlauf wird geladen, wenn die Sitzung beginnt, sodass die Änderungen an der .zsh_history-Datei nicht in der aktuellen Shell-Sitzung widergespiegelt werden. Wenn Sie eine neue Shell starten, indem Sie ein neues Fenster oder einen neuen Tab öffnen, werden Sie die Änderungen bemerken.