Ich möchte alle vorherigen Befehle aus dem Verlauf meines Servers löschen. Ich habe verwendet history -c
und es scheint, dass alle Dinge geklärt sind, aber wenn ich auf den Server ssh, sind alle Befehle noch da.
Wie kann ich sie dauerhaft löschen?
Die Datei ~/.bash_history
enthält den Verlauf.
Um den Bash-Verlauf vollständig auf dem Server zu löschen, öffnen Sie das Terminal und geben Sie Folgendes ein
cat /dev/null > ~/.bash_history
Eine andere alternative Möglichkeit besteht darin, eine Verknüpfung ~/.bash_history
zu erstellen/dev/null
Ein ärgerlicher Nebeneffekt ist, dass die Verlaufseinträge eine Kopie im Speicher haben und beim Abmelden in die Datei zurückgespült werden .
Um dies zu umgehen, verwenden Sie den folgenden Befehl (funktioniert für mich):
cat /dev/null > ~/.bash_history && history -c && exit
> ~/.bash_hstory
genug?Was ist zu tun:
In jeder offenen Bash-Shell (möglicherweise sind mehrere Terminals geöffnet):
Warum: Wie oben erwähnt, wird
history -c
die Datei geleert~/.bash_history
. Es ist wichtig zu beachten, dass die bash-Shell den Verlauf nicht sofort in die Datei bash_history schreibt. Daher ist es wichtig, (1) den Verlauf in die Datei zu schreiben und (2) den Verlauf in allen Terminals zu löschen . Das ist, was die obigen Befehle tun.Referenz: http://www.giannistsakiris.com/index.php/2007/09/13/how-to-clear-bash-history-and-what-to-watch-out-for/
quelle
history -cw
Führen Sie die folgenden Befehle aus, um den Verlauf für immer zu löschen
Viel Glück!
quelle
Es gibt noch eine andere, viel einfachere Möglichkeit:
history -c
Auf der Terminal-Eingabeaufforderung werden alle Einträge in derbash_history
Datei ausgeführt und sind verschwunden .quelle
history -c
genau die Methode ist, die zu dieser Frage geführt hat.Eine andere Möglichkeit besteht darin, die
~/.bash_history
Datei mit demrm ~/.bash_history
Befehl zu löschen . Wenn Sie sich ein weiteres Mal anmelden, wird die.bash_history
Datei automatisch erstellt.quelle
Löschen Sie den Verlauf der aktuellen Shell:
Wenn Sie sich abmelden, wird der Verlauf Ihrer aktuellen Shell bis zu einer maximalen Anzahl an ~ / .bash_history angehängt (siehe HISTFILESIZE in "man bash").
Wenn Sie den Verlauf vollständig entfernen möchten, müssen Sie im Wesentlichen ~ / .bash_history leeren, was viele der oben genannten Einträge vorgeschlagen haben. Sowie:
Dies löscht den Verlauf der aktuellen Shell und erzwingt dann, dass der Verlauf der aktuellen Shell (leer) ~ / .bash_history überschreibt. Genauer gesagt, erzwingt dies das Überschreiben von HISTFILE (standardmäßig ~ / .bash_history).
Hoffe das hilft.
quelle
Melden Sie sich jetzt wieder an und sehen Sie, dass Ihre Pfeilspitze Ihnen nichts gibt.
quelle
Probier diese
Bearbeiten Sie Ihre
.profile
und fügen Sie die Zeile unten am Ende der Datei hinzuAuf diese Weise wird Ihre .bash_history-Datei bei jeder Anmeldung automatisch für Sie gelöscht. Das Hinzufügen der Option -r zum rekursiven Entfernen ist gefährlich und wird nicht benötigt.
quelle