5 Tipps mit denen du die Kommando-Historie auf deinem Server analysierst

Was wurde ausgeführt? So behälst du den Überblick.

In unserem Alltag als Linux-Administrator arbeiten wir oft auf verschiedenen Systemen – teilweise sogar mit mehreren Kollegen zusammen. Dabei entfällt selbst dem besten Gedächtnis einmal, welches Kommando wir zuletzt auf einem Server ausgeführt haben. Hilfe bietet dir das Kommando „history“. Es zeigt dir die zuletzt ausgeführten Kommandos an, vorausgesetzt du nutzt es mit dem richtigen Parameter. Die wichtigsten 5 Tricks im Umgang mit dem history-Kommando ließt du in diesem Beitrag.

Trick 1: Lasse dir alle Kommandos mit Datum und Uhrzeit anzeigen

Standardgemäß zeichnet Linux alle Kommandos auf, die du unter einem bestimmten Benutzer ausführst. Mit dem Kommando history lasse dir diese anzeigen. Zwar zeigt dir die Ausgabe alle ausgeführten Kommandos des Benutzers, jedoch siehst du nicht, wann diese ausgeführt worden sind. Um das Datum und die Uhrzeit anzeigen zu lassen, musst du History entsprechend konfigurieren. Dazu setzt du eine neue Shell-Variable namens „HISTTIMEFORMAT“. Konkret nutzt du folgenden Befehl:

export HISTTIMEFORMAT=’%d/%m/%y %T‘

Die Variablen haben dabei folgende Bedeutung:

  • %d = Tag
  • %m = Monat
  • %y = Jahr
  • %T = Uhrzeit (Stunde, Minute, Sekunde)

Wenn du anschließend das history-Kommando erneut ausführst, findest du in der Anzeige die Datumsangabe.

1

Trick 2: So führst du ein Kommando erneut wieder aus

Erinnerst du dich nicht mehr an die Syntax eines komplizierten Kommandos? Kein Problem: Verwende einfach die Suchfunktion der Historie. Drücke dazu die Tastenkombination „STRG+R“ und gebe einfach ein Stichwort des Kommandos ein. Dir wird dann eine Übereinstimmung angezeigt. Doch wie geht es dann weiter?

Wenn du ENTER drückst, wird das Kommando ausgeführt. Wenn du es hingegen vor der Ausführung noch ändern möchtest, drücke einfach die seitliche Pfeiltaste. Das Kommando wird so in die Konsole übernommen ohne es auszuführen.

Trick 3: Wie du doppelte Kommandos in der Historie ignorierst

Die History kann sich schnell mit unzähligen Doppeleinträgen füllen. Wenn du beispielsweise einen „ping“ oder ein „nslookup“-Kommando zur Fehleranalyse mehrfach ausführst, überhäuft dies die History. Um identische Kommandos nur einmal anzuzeigen, setze die Umgebungsvariable „HISTCONTROL“ auf den Wert „ignoredups“. Konkret setze die Umgebungsvariable wie folgt:

export HISTCONTROL=ignoredups

Anschließend werden in der History-Anzeige alle identischen Kommando-Ausführungen auf jeweils einen Eintrag reduziert.

Übrigens: Mache diese Einstellung einfach rückgänig, indem du das „unset“-Kommando verwendest. Beispiel:

unset HISTCONTROL

Trick 4: So findest du bestimmte Kommandos in der Historie

Wenn du die Anzeige der Historie nur nach bestimmten Kommandos filtern möchtest, kombiniere das History-Kommando mit dem Grep-Kommando nach folgendem Muster:

history | grep SUCHWORT

Wenn du beispielsweise alle netstat-Kommandos in der Historie suchen möchtest, gebe folgendes Kommando ein:

history | grep netstat

Das Ergebnis in unserem Beispiel sieht wie folgt aus:

2

Trick 5: Wie du die Kommando-Historie löschst

Aus Sicherheitsgründen ist es nicht immer gewünscht, dass eine Kommando-Historie aufgezeichnet wird. Wenn du deine eigenen Spuren löschen möchtest, geben einfach das Lösch-Kommando ein:

history -c

Die Historie wird damit entleert. Falls du dauerhaft keine Aufzeichnung wüschst, füge folgende Zeile der Datei „/etc/profile“ zu:

unset HISTFILE

Während einer Sitzung kannst dann zwar noch auf deine eingegebenen Kommandos zurückgreifen, dauerhaft werden diese jedoch nicht gespeichert.