Detaillierte Erklärung zum Anpassen des Linux-Befehlsverlaufs

Detaillierte Erklärung zum Anpassen des Linux-Befehlsverlaufs

Der Befehl „Bash History“ im Linux-System hilft dabei, sich die zuvor ausgeführten Befehle zu merken und sie zu wiederholen, ohne sie erneut einzugeben.

Wenn das möglich ist, werden Sie bestimmt froh sein, nicht ab und zu ein Dutzend Seiten Handbuchseiten lesen und Ihre Dateien erneut auflisten zu müssen, sondern stattdessen zuvor ausgeführte Befehle durch die Eingabe des Verlaufs anzeigen zu können. In diesem Beitrag untersuchen wir, wie Sie den Verlaufsbefehl dazu bringen, sich das zu merken, was Sie möchten, und Befehle zu vergessen, die möglicherweise keinen großen „historischen Wert“ haben.

Zeigen Sie Ihren Befehlsverlauf an

Um zuvor ausgeführte Befehle anzuzeigen, können Sie einfach „history“ eingeben. Möglicherweise wird eine lange Liste mit Befehlen angezeigt. Die Anzahl der gespeicherten Befehle hängt von der Umgebungsvariablen mit dem Namen $HISTSIZE ab, die in Ihrer Datei ~/.bashrc festgelegt ist. Sie können diese Einstellung jedoch nach Bedarf ändern, wenn Sie mehr oder weniger Befehle speichern möchten.

Um den Verlauf anzuzeigen, verwenden Sie den Befehl „history“:

$ Geschichte
209 uname -v
210 Datum
211 Mannwechsel
... ...

So zeigen Sie die maximale Anzahl der angezeigten Befehle an:

$ echo $HISTSIZE
500

Sie können $HISTSIZE ändern und dauerhaft machen, indem Sie einen Befehl wie diesen ausführen:

$ export HISTSIZE=1000
$ echo "HISTSIZE=1000" >> ~/.bashrc

Es gibt auch einen Unterschied zwischen dem Umfang des Verlaufs, der für Sie gespeichert wird, und dem Umfang des Verlaufs, der angezeigt wird, wenn Sie den Verlauf eingeben. Die Variable $HISTSIZE steuert, wie viel vom Verlauf angezeigt wird, während die Variable $HISTFILESIZE steuert, wie viele Befehle in Ihrer .bash_history-Datei gespeichert werden.

$ echo $HISTSIZE
1000
$ echo $HISTFILESIZE
2000

Sie können die zweite Variable überprüfen, indem Sie die Anzahl der Zeilen in der Verlaufsdatei zählen:

$ wc -l .bash_history
2000 .bash_history

Beachten Sie, dass Befehle, die während einer Anmeldesitzung eingegeben werden, erst zu Ihrer Datei .bash_history hinzugefügt werden, wenn Sie sich abmelden. Sie werden jedoch sofort in der Ausgabe des Verlaufsbefehls angezeigt.

Nutzungsgeschichte

Es gibt drei Möglichkeiten, Befehle, die Sie im Verlauf finden, erneut auszugeben. Die einfachste Methode (insbesondere, wenn der Befehl, den Sie wiederverwenden möchten, vor Kurzem ausgeführt wurde) besteht normalerweise darin, ein ! einzugeben, gefolgt von genügend Anfangsbuchstaben des Befehls, um ihn eindeutig zu identifizieren.

$ !u
uname -v
#37-Ubuntu SMP Do 26. März 20:41:27 UTC 2020

Eine weitere einfache Möglichkeit, einen Befehl zu wiederholen, besteht darin, einfach die Aufwärtspfeiltaste zu drücken, bis der Befehl angezeigt wird, und dann die Eingabetaste zu drücken.

Alternativ können Sie, wenn Sie den Befehl „history“ ausführen und in der Liste ein Befehl sehen, den Sie erneut ausführen möchten, ein ! gefolgt von der links neben dem Befehl angezeigten Nummer eingeben.

$ !209
uname -v
#37-Ubuntu SMP Do 26. März 20:41:27 UTC 2020

Verborgene Geschichte

Wenn Sie die Protokollierung von Befehlen für einen bestimmten Zeitraum beenden möchten, können Sie diesen Befehl verwenden:

$ set +o history

Die von Ihnen eingegebenen Befehle werden nicht angezeigt, wenn Sie „history“ eingeben, und sie werden auch nicht zu Ihrer Datei .bash_history hinzugefügt, wenn Sie Ihre Sitzung beenden oder Terminal schließen.

Um diese Einstellung aufzuheben, verwenden Sie „set -o history“

Um es dauerhaft zu machen, können Sie dies zu Ihrer .bashrc-Datei hinzufügen, obwohl es im Allgemeinen keine gute Idee ist, den Befehlsverlauf nicht zu verwenden.

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

Um den Verlauf vorübergehend zu löschen, sodass beim Eintippen von „history“ nur die danach eingegebenen Befehle angezeigt werden, verwenden Sie den Befehl history -c (clear):

$ Verlauf | Ende -3
209 uname -v
210 Datum
211 Mannwechsel
$ Verlauf -c
$ Geschichte
1 Geschichte

Hinweis: Befehle, die nach der Eingabe von history -c eingegeben werden, werden nicht zur Datei .bash_history hinzugefügt.

Kontrollverlauf

Die Standardeinstellungen für den Verlaufsbefehl enthalten auf vielen Systemen eine Variable namens $HISTCONTROL, um sicherzustellen, dass derselbe Befehl nur einmal gespeichert wird, selbst wenn Sie ihn sieben Mal hintereinander ausführen. Es stellt außerdem sicher, dass alle von Ihnen eingegebenen Befehle, denen ein oder mehrere Leerzeichen folgen, aus Ihrem Befehlsverlauf ausgelassen werden.

$ grep HISTCONTROL .bashrc
HISTCONTROL=beide ignorieren

ignoreboth bedeutet „doppelte Befehle und Befehle, die mit Leerzeichen beginnen, ignorieren“. Wenn Sie beispielsweise diese Befehle eingeben:

$ echo versuche dies
$ Datum
$ Datum
$ Datum
$ Passwort
$ Geschichte

Ihr Verlaufsbefehl sollte ungefähr Folgendes melden:

$ Geschichte
$ echo versuche dies
$ Datum
$ Geschichte

Beachten Sie, dass aufeinanderfolgende Datumsbefehle auf einen reduziert werden und mit Leerzeichen eingerückte Befehle weggelassen werden.

Die Geschichte ignorieren

Um bestimmte Befehle zu ignorieren, sodass sie beim Eingeben von „history“ nicht angezeigt werden und nicht zu Ihrer .bash_history-Datei hinzugefügt werden, verwenden Sie die Einstellung $HISTIGNORE. Zum Beispiel:

$ export HISTIGNORE=”history:cd:exit:ls:pwd:man”

Diese Einstellung bewirkt, dass alle Befehle „history“, „cd“, „exit“, „ls“, „pwd“ und „man“ aus der Ausgabe Ihres history-Befehls und aus Ihrer .bash_history-Datei ignoriert werden.

Wenn Sie diese Einstellung dauerhaft machen möchten, müssen Sie sie zu Ihrer .bashrc-Datei hinzufügen.

$ echo 'HISTIGNORE="history:cd:exit:ls:pwd:man"' >> .bashrc

Diese Einstellung bedeutet einfach, dass beim Zurückblicken auf zuvor ausgeführte Befehle die Liste nicht mit Befehlen überfüllt ist, die Sie beim Anzeigen Ihres Befehlsverlaufs nicht sehen möchten.

Merken, Ignorieren und Vergessen früherer Befehle

Der Befehlsverlauf ist nützlich, da er Ihnen hilft, sich an kürzlich verwendete Befehle zu erinnern und Sie an die letzten Änderungen erinnert, die Sie vorgenommen haben. Darüber hinaus wird dadurch die erneute Ausführung von Befehlen vereinfacht, insbesondere von Befehlen mit einer Reihe von Parametern, die Sie nicht unbedingt neu erstellen möchten. Durch Anpassen Ihrer Verlaufseinstellungen können Sie den Befehlsverlauf einfacher und effizienter nutzen.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • So zeigen Sie historische Befehle in Linux an und führen sie aus
  • Bringen Sie Ihnen bei, den Linux-Befehlszeilenverlauf auszublenden
  • Aufzeichnungsfunktion für Shell-Verlaufsbefehle in Linux
  • So kommunizieren Sie mit anderen Benutzern über die Linux-Befehlszeile
  • In Linux gibt es keinen Make-Befehl (make: *** Kein Ziel angegeben und keine Makefile- oder Make-Befehlsinstallationsmethode gefunden)
  • Verwendung des Linux-Telnet-Befehls
  • Implementierungsprinzip und Codebeispiele für die Komprimierungsdatei des Linux-Befehls gzip

<<:  Lösung für das MySQL IFNULL-Beurteilungsproblem

>>:  Gründe, warum MySQL den Abfrage-Cache abgebrochen hat

Artikel empfehlen

So implementieren Sie die Kontrollkästchen- und Radioausrichtung

Nicht nur das Verhalten verschiedener Browser ist...

Beispielcode zur Implementierung eines 3D-Bucheffekts mit CSS

Schauen wir uns zunächst ohne Umschweife die Rend...

Verwenden Sie reines CSS, um das A-Tag in HTML ohne JavaScript zu deaktivieren

Tatsächlich ist dieses Problem bereits aufgetreten...

Teilen Sie einige ungewöhnliche, aber nützliche JS-Techniken

Vorwort Programmiersprachen enthalten normalerwei...

Details zu MySQL-Zeittypen und -Modi

Inhaltsverzeichnis 1. MySQL-Zeittyp 2. Überprüfen...

Die unangemessenen MaxIdleConns von MySQL führen zu kurzen Verbindungen

1 Hintergrund Vor kurzem sind im Online-Geschäft ...

Detaillierte Erklärung der Verwendung des Linux-Befehls „tee“

Der Befehl tee wird hauptsächlich verwendet, um d...

So starten Sie eine Transaktion in MySQL

Vorwort In diesem Artikel wird hauptsächlich besc...

Mit CSS3 implementierte Text-Popup-Effekte

Ergebnisse erzielenImplementierungscode html <...

CSS3 realisiert das Papierflugzeug aus der Kindheit

Heute werden wir Origami-Flugzeuge basteln (die A...

Zusammenfassung der MySQL-Datenmigration

Inhaltsverzeichnis Vorwort: 1. Über die Datenmigr...

So zeigen Sie Webseiten in verschiedenen Auflösungen und Browsern richtig an

Die Schlüsselcodes lauten wie folgt: Code kopieren...