Under Construction

Bearbeiten der History

Einträge in die History Liste werden bei aktivierter History Funktionalität von der bash automatisch vorgenommen. Allerdings kann der Benutzer nachträglich diese History Liste in begrenzter Form bearbeiten.

Wir starten mit der folgenden History:

[user01@aixe01 ~]$ history
    1  ls -l
    2  ls -l
    3  hostname
    4  df /
    5  pwd
    6  cd /usr/bin
    7  ls
    8  ls -l g*
    9  cd
[user01@aixe01 ~]$

Einzelne Einträge in der History Liste lassen sich mittels „history –d“ (delete) löschen. Hierzu wird einfach die Nummer des Kommandos als Argument angegeben. Als Beispiel löschen wir die Kommandos mit der Nummer 2 („ls –l“) und 5 („pwd“) aus der History Liste:

[user01@aixe01 ~]$ history -d 2
[user01@aixe01 ~]$ history
    1  ls -l
    2  hostname
    3  df /
    4  pwd
    5  cd /usr/bin
    6  ls
    7  ls -l g*
    8  cd
[user01@aixe01 ~]$

Dabei ist zu beachten das dann spätere Kommandos in der Nummerierung entsprechend aufrücken. Das Kommando „pwd“ hat nun die Nummer 4 und nicht mehr die Nummer 5 wir vorher. Entsprechend muss die Nummer 4 bei „history –d“ angegeben werden, um das pwd Kommando aus der History Liste zu löschen:

[user01@aixe01 ~]$ history -d 4
[user01@aixe01 ~]$ history
    1  ls -l
    2  hostname
    3  df /
    4  cd /usr/bin
    5  ls
    6  ls -l g*
    7  cd
[user01@aixe01 ~]$

Man kann sich natürlich die Frage stellen, warum man überhaupt Kommandos aus der History Liste löschen sollte? Wie im nächsten Kapitel gezeigt wird, lässt sich die History auch manuell in eine beliebige Datei abspeichern. Man könnte damit z.B. das Vorgehen bei einer bestimmten Aufgabe über die History dokumentieren und dann in eine separaten Datei abspeichern.

Greift man das genannte Beispiel mit Festhalten der Arbeitsschritte einer Aufgabe auf, möchte man vermutlich mit einer leeren History anfangen. Das Kommando history bietet hierfür die Option „-c“ (clear), mit der die History komplett geleert werden kann:

[user01@aixe01 ~]$ history -c
[user01@aixe01 ~]$ history
[user01@aixe01 ~]$

Damit lässt sich die interne History der bash schon rudimentär bearbeiten. Weitere Möglichkeiten sind aber nicht vorgesehen. Das ist aber auch in der Regel nicht notwendig, da man die History, sobald sie in einer Datei abgespeichert wurde ja mit einem Editor bearbeiten kann.