Linux: Eintrag aus der HISTORY entfernen

Problem:
Man hat aus versehen eine kritische Zeile eingegeben, die man aber auf dem System nicht in der histrory belassen möchte.

Lösung:
Anzeige der history:

user1@lubuntu:~$ history

Dann sieht man die Einträge mit Zeilennummern:
1  sudo apt-search virtualbox
2  sudo apt-get update
3  vim
4  sudo apt-get install vim
5  vi /etc/environment
6  sudo vi /etc/environment
7  kritischer Befehl mit geheimnis 56213824

Um dann die Zeile 7 zu entfernen und den Rest zu behalten, verwendet man den Befehl

history -d 7

und danach noch

history -w

Damit ist die Zeile gelöscht und mit dem zweiten Befehl wird der Vorgang endgültig gemacht. Alternativ kann man auch ‚history -d 7 -w‘ in einer Zeile eingeben.

Um die history ganz zu löschen, gibt man 'history -c -w'

Will man verhindern, dass wichtige Zeilen in die History aufgenommen werden, kann man einstellen, dass alle Befehle, die mit einem Leerzeichen anfangen nicht eingetragen werden. Man sollte sich dann nur noch angewöhnen kritische Befehle mit einem Leerzeichen einzuleiten.

Befehl: export HISTCONTROL=ignorespace

user1@lubuntu:~$ export HISTCONTROL=ignorespace
user1@lubuntu:~$ echo ‚Test‘
Test
user1@lubuntu:~$ history
1  history
2  export HISTCONTROL=ignorespace
3  echo ‚Test‘
4  history
user1@lubuntu:~$  echo ‚Test‘
Test
user1@lubuntu:~$ history
1  history
2  export HISTCONTROL=ignorespace
3  echo ‚Test‘
4  history
5  history

Achtung: Vor dem zweiten echo ‚Test‘  Befehl ist ein extra Leerzeichen!
Daher taucht das zweite „echo ‚Test‘ nicht in der History auf.

 

Last updated by at .

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden..