Der Befehlsverlauf hilft Ihnen, Befehle anzuzeigen, die Sie zuvor im Terminal ausgeführt haben. So können Sie den Befehlsverlauf unter Linux verwalten.

Unter Linux wird jeder eingegebene Befehl in der Verlaufsdatei gespeichert. Mit dem Verlaufsbefehl können Sie diese Befehle anzeigen und wiederverwenden, ohne sie erneut eingeben zu müssen. Mit können Sie durch die Verlaufsliste navigieren Hoch Und Runter Schlüssel. Es kann jedoch vorkommen, dass Sie einige Befehle aus dem Verlauf löschen oder die Funktion zum Speichern des Verlaufs dauerhaft deaktivieren möchten.

Glücklicherweise können Sie mit Linux Befehlsprotokollierungsfunktionen steuern, z. B. vorübergehend deaktivieren oder dauerhaft löschen, den gesamten Verlauf löschen oder verhindern, dass bestimmte Befehle im Verlauf gespeichert werden Liste. Mal sehen wie.

Gesamten Befehlsverlauf unter Linux löschen

Um das Ganze zu löschen Befehlsverlauf unter Linux Verwenden Sie von Anfang an den Verlaufsbefehl mit dem -C Möglichkeit:

Geschichte -c

Dadurch wird der gesamte Verlauf der zuvor ausgeführten Befehle gelöscht.

Löschen Sie bestimmte Befehle aus dem Verlauf

Manchmal möchten Sie möglicherweise bestimmte Befehle entfernen, anstatt den gesamten Verlauf zu löschen. In diesem Fall müssen Sie die Nummer ermitteln, die diesem bestimmten Befehl in der Verlaufsliste zugeordnet ist. Sie können dies tun, indem Sie einfach Folgendes eingeben:

Geschichte

Oder Sie können die Verlaufsausgabe auch an grep weiterleiten, um die gewünschten Informationen einfacher zu finden:

Geschichte | grep ifconfig

Sobald Sie die Befehlsnummer gefunden haben, können Sie sie mit dem Verlaufsbefehl mit löschen -D Option gefolgt von der Befehlsnummer:

Geschichte -d 

Ausführen eines Befehls, ohne ihn in den Verlauf aufzunehmen

Um einen Befehl auszuführen, ohne dass er im Verlauf aufgezeichnet wird, fügen Sie einfach a hinzu Raum vor dem Befehl. Damit diese Funktion jedoch funktioniert, müssen Sie die festlegen HISTCONTROL Umgebungsvariable zu Leerzeichen ignorieren mit dem folgenden Befehl:

export HISTCONTROL=Leerzeichen ignorieren

Diese Änderung bleibt nach einem Neustart nicht bestehen. Um es dauerhaft zu machen, fügen Sie es zu Ihrer hinzu .bashrc Datei mit dem folgenden Befehl:

echo 'HISTCONTROL=ignorespace' >> ~/.bashrc

Durch Aktivieren dieser Funktion zeichnet Bash keine Befehle auf, die mit einem Leerzeichen in der Verlaufsdatei beginnen.

Beispielsweise wird der folgende Befehl nicht von der Shell aufgezeichnet:

[space] Echo 'Hallo, das ist die erste Zeile'

Wenn Sie denselben Befehl ohne Leerzeichen ausführen, zeichnet Bash ihn im Verlauf auf:

Echo 'Hallo, das ist die erste Zeile'

In ähnlicher Weise können Sie Bash auch aufeinanderfolgende doppelte Befehle aus dem Verlauf entfernen lassen mit:

echo 'HISTCONTROL=ignoredups' >> ~/.bashrc

Diese Funktion speichert die aufeinanderfolgenden Duplikate nur einmal in der Verlaufsliste.

So aktivieren / deaktivieren Sie den Befehlsverlauf unter Linux

Während die vorherige Methode verhindern kann, dass die Shell Befehle im Verlauf protokolliert, ist sie möglicherweise nicht praktikabel, wenn es um eine große Anzahl von Befehlen geht.

Das Einfügen eines Leerzeichens vor jedem Befehl kann monoton und lästig werden. In einem solchen Szenario können Sie den Shell-Verlauf vorübergehend deaktivieren, indem Sie den folgenden Befehl ausführen:

setze +o Verlauf

Verwenden Sie den folgenden Befehl, um es wieder einzuschalten:

set -o Geschichte

Um den Linux-Befehlsverlauf dauerhaft zu deaktivieren, verwenden Sie:

echo 'set +o history' >> ~/.bashrc

Ignorieren Sie, dass bestimmte Befehle nicht im Verlauf aufgezeichnet werden

Es kann bestimmte Befehle geben, die Sie ausschließen möchten, da sie die Verlaufsliste überladen und die Navigation erschweren können. Einige der häufigsten Beispiele sind pwd, ls, man, cat und der cd-Befehl da es repetitiv und überflüssig sein kann.

Verwendung der HISTIGNORE Umgebungsvariable können Sie steuern, welche Befehle nicht zur Verlaufsliste hinzugefügt werden sollen. Um beispielsweise bestimmte Befehle wie history, pwd und cat vom Speichern in der History-Liste auszuschließen, trennen Sie sie mit einem Doppelpunkt und schließen Sie sie wie folgt in doppelte Anführungszeichen ein:

export HISTIGNORE="Geschichte: pwd: Katze"

Um die Änderung dauerhaft zu machen, fügen Sie den Befehl der hinzu .bashrc Datei mit:

echo 'HISTIGNORE="history: pwd: cat"' >> .bashrc

Kontrollieren Sie Ihren Bash-Befehlsverlauf unter Linux

Linux bietet umfassende Kontrolle über die Verwaltung des Befehlszeilenverlaufs, sodass Benutzer angeben können, welche Befehle in der gespeichert werden sollen Verlauf, löschen Sie bestimmte Befehle aus dem Verlauf, aktivieren oder deaktivieren Sie den Verlauf vorübergehend oder löschen Sie sogar den gesamten Geschichte.

Dies trägt nicht nur zum Schutz der Privatsphäre des Benutzers bei, sondern verhindert auch, dass irrelevante oder sich wiederholende Befehle den Bash-Verlauf überladen.

Eine noch bessere Möglichkeit, auf den Befehlszeilenverlauf zuzugreifen, ist die Verwendung von McFly, einem von neuronalen Netzwerken unterstützten Ersatz für die standardmäßige umgekehrte i-Suche unter Linux.