Sie kennen vielleicht den grundlegenden Gebrauch des Verlaufsbefehls, aber es kann viel mehr tun als das. Die Bash -Historie wird normalerweise in der Datei gespeichert ~/.bash_history. Es ermöglicht es Ihnen, den gespeicherten Datensatz auf effiziente Weise zu erinnern und wiederzuverwenden, um das Beste aus der Bash History Saving Feature herauszuholen. Nicht nur das, sondern Sie können auch die Ausgabe des Bash -Befehls so anpassen und steuern, wie Sie es gewünscht haben.
In diesem Artikel werden wir erläutern.
Wir haben Debian 10 verwendet, um die in diesem Artikel genannten Befehle und Prozeduren auszuführen.
Verwenden von Bash -Befehlsverlauf
Betrachten der Bash -Geschichte
Um die gesamte Geschichte der Shell -Befehle anzuzeigen, können Sie den folgenden Befehl in Terminal ausführen:
$ Geschichte
Es wird den gesamten Historie für einen bestimmten Benutzer aus der Verlaufsdatei aufgelistet, die speziell für diesen Benutzer gespeichert ist. Sie werden alle Befehle sehen, die mit einer Zahl, die jedem von ihnen zugewiesen ist. Es wird die älteren Befehle oben mit Nummer 1 und den neueren Befehlen unten aufgelistet.
Durchsuchen des Verlaufsausgangs
Sie können auch nach einem bestimmten Schlüsselwort aus der Verlaufsausgabe suchen. Kombinieren Sie den Befehl History mit GREP und ein bestimmtes Schlüsselwort, um nach Befehlen zu suchen, die Ihrem angegebenen Schlüsselwort wie folgt übereinstimmen:
$ History | Grep [Schlüsselwort]
Um beispielsweise alle Befehle aufzulisten, die das Schlüsselwort „Finden“ enthalten, wäre der Befehl:
$ History | Grep finden
Last n -Befehle anzeigen
Der Befehl history standardmäßig listet die letzte 1000 Anzahl der von einem Benutzer ausgeführten Befehle auf. Im Fall möchten Sie nur eine bestimmte Nummer auflisten, sagen wir n Anzahl der zuletzt ausgeführten Befehl, führen Sie den folgenden Befehl im Terminal aus:
$ History n
Um beispielsweise die letzten 7 ausgeführten Befehle aufzulisten, wäre der Befehl:
$ History 7
Um die Anzahl der letzten n -Ausführungsbefehle anzuzeigen, die ein bestimmtes Schlüsselwort enthalten, können Sie die folgende Syntax verwenden:
$ History | Grep -Schlüsselwort | Tail -n
Ein Beispiel hierfür wäre es, die letzten 4 ausgeführten Befehle mit dem Schlüsselwort "Java" anzuzeigen.
$ History | grep java | tail -n
Älteste Befehle anzeigen
Um die älteste n -Anzahl von Befehlen anzuzeigen, können Sie die folgende Syntax in der Terminal verwenden:
$ History | Kopf -n
Verwenden Sie die folgende Syntax, um die älteste n Anzahl von Befehlen anzuzeigen, die ein bestimmtes Schlüsselwort enthalten:
$ History | Grep -Schlüsselwort | Kopf -n
Ein Beispiel hierfür wäre es, die ältesten 4 ausgeführten Befehle mit dem Schlüsselwort "Java" anzusehen.
$ History | Grep Java | Kopf -4
Klare Bash -Geschichte vollständig
Führen Sie den folgenden Befehl im Terminal aus, um den gesamten Bash -Verlauf zu entfernen:
$ history -cw
Anpassen des Bash -Befehlsverlaufs anpassen
Um den Bash -Befehlsverlauf anzupassen, müssen wir Änderungen in der ~/ vornehmen.BASHRC -Datei. Um das ~/ zu bearbeiten.BASHRC -Datei verwenden Sie den folgenden Befehl:
$ nano ~/.bashrc
Sobald Sie mit der Änderung der Datei fertig sind, verwenden Sie Strg+O und Strg+X, um den Nano -Editor zu speichern und zu schließen.
Führen Sie dann den folgenden Befehl aus, um die Änderungen anzuwenden:
$ source ~/.bashrc
Fügen Sie Datum und Zeitstempel hinzu, um die Geschichte zu verprügeln
Wenn Sie zusammen mit dem Befehlsverlauf Datum und Zeitstempel anzeigen möchten, können Sie dies tun, indem Sie die folgende Zeile in ~/ hinzufügen.bashrc:
$ export histimeFormat = ' %f, %t'
Jetzt laufen Geschichte Befehl und es wird den Befehlsverlauf mit entsprechenden Daten und Zeitstempel angezeigt.
Zunehmende Größe der Bash -Geschichte
Bash standardmäßig hält 500 Befehle in der Verlaufsliste. Wir können diesen Wert jedoch unter Verwendung des histarischen Wertes ändern.
Führen Sie den folgenden Befehl im Terminal aus, um die aktuelle Größe des Bash -Verlaufs anzuzeigen:
$ echo $ histSize
In ähnlicher Weise beträgt die Standardgröße der Bash -Verlaufsdatei 500. Es ist die maximale Anzahl von Einträgen, die in der Verlaufsdatei enthalten sind.
Um die Größe der Bash -Geschichte zu erhöhen, sagen wir 10000, fügen Sie die folgenden Zeilen in ~/ hinzu.BASHRC -Datei:
$ HistSize = 10000
$ HistFileSize = 10000
Um zu überprüfen, ob sich die Größe der Bash -Verlauf erfolgreich verändert hat, führen Sie die folgenden Befehle im Terminal aus:
$ echo $ histSize
$ echo $ histFileSize
Anhängen Bash -Befehle an die Historie -Datei
Wenn eine Bash -Sitzung geschlossen ist. Führen Sie den folgenden Befehl in Terminal aus: Um die aktuellen Einstellungen anzuzeigen, führen Sie den folgenden Befehl aus:
$ Shopt HistAppend
Die "Ein" in der Ausgabe zeigt die Option HistAppend ist aktiv. Während „Aus“ zeigt, ist die HistAppend -Option deaktiviert und die Datei wird überschrieben.
Öffnen Sie das ~//.BASHRC -Datei und:
Fügen Sie die folgende Zeile hinzu, wenn Sie die Befehle an die Verlaufsdatei anhängen möchten, anstatt zu überschreiben:
$ Shopt -s HistAppend
Oder fügen Sie die folgende Zeile hinzu, wenn Sie die Option Anhang deaktivieren möchten und die Datei beim Exit überschreiben möchten:
$ Shopt -U histAppend
Die Geschichte der Schale sofort die Geschichte
Bash standardmäßig speichert die Sitzung nur nach Ende der Sitzung in der Bash -Historie -Datei. Um dieses Standardverhalten zu ändern und so sofort jeden Befehl zu speichern, den Sie ausgeführt haben.
Bearbeiten Sie das ~//.BASHRC -Datei und fügen Sie die folgende Zeile hinzu:
$ Prompt_command = 'history -a' '
Wenn Sie nun einen Befehl ausführen, wird er sofort zur Verlaufsdatei hinzugefügt.
Kontroll -Bash -Geschichte
Wir können die Art und Weise steuern, wie Bash unseren Befehlsgeschichte über die HistControl -Variable speichert. Wir können es angeben, um doppelte Einträge zu ignorieren und/oder Einträge mit führenden weißen Räumen zu ignorieren.
Um diese Funktionen anzuwenden, öffnen Sie das ~//.bashrc und fügen Sie die folgende Zeile mit den vom Dickdarm getrennten Werten hinzu: wie folgt:
$ export histcontrol = ignorespace: ignoredups
Ignorieren Sie bestimmte Befehle
Wir können auch steuern, welche befiehlt. Es ist eine dicker getrennte Liste von Mustern, in denen wir alle Befehle angeben können, die wir von der Geschichte ignorieren möchten.
Wenn wir beispielsweise nicht die grundlegenden Befehle wie History, LS, PWD -Befehle in der Verlaufsliste auflisten möchten, fügen wir die folgende Zeile in das ~/ hinzu.BASHRC -Datei:
$ export histignore = "history: ls: pwd:"
Mit Linux Bash Command History können Sie viel mehr tun, als nur die alten Befehle zu wiederholen. In diesem Artikel haben wir gelernt, wie man die Bash -Geschichte verwendet, um die zuvor ausgeführten Befehle anzuzeigen, und auch gelernt, die Art zu steuern.