Sie müssen sich der Verwendung des up bewusst sein und unten Pfeiltasten, um durch die Liste der ausgeführten Befehle in Ihrem Bash-Verlauf zu blättern, aber wissen Sie, dass der Bash-Verlauf viel mehr umfasst, als nur Befehle zu wiederholen?
Eine solche Funktion der Bash-Shell, die Sie in Ihren benutzerdefinierten Einstellungen ändern können, ist der Verlaufsbefehl, der von einigen Umgebungsvariablen und einigen Shell-Optionen beeinflusst wird (shopt – ein Befehl zum Setzen und Aufheben von Shell-Optionen).
[Das könnte Ihnen auch gefallen:So überprüfen Sie den Linux-Befehlsverlauf nach Datum]
Wenn Sie mehrere Shell-Fenster oder mehrere Sitzungen gleichzeitig für denselben Benutzer von verschiedenen Systemen verwenden, kann die Art und Weise, wie der Verlaufsbefehl Befehle protokolliert, etwas umständlich werden, und einige Befehle können von neueren überschrieben werden.
Wie man das Anhängen des Verlaufs durch Bash unter Linux stoppt
Um dies zu verhindern, können Sie die folgende Option in Ihrer ~/.bashrc festlegen Datei.
# ignore duplicate entries and don't overwrite the history export HISTCONTROL=ignoredups shopt -s histappend
Sobald die Variablen definiert sind, können Sie die neuen Werte verwenden, indem Sie den folgenden Befehl ausführen.
$ source .bashrc
So erhöhen Sie die Größe des Bash-Verlaufs unter Linux
Eine weitere mögliche Schwierigkeit mit dem Verlaufsbefehl besteht darin, dass er sehr viel Speicherplatz beanspruchen kann, wenn Sie nicht viel Speicherplatz für Ihre persönlichen Dateien haben. Um dies zu verhindern, müssen Sie drei Umgebungsvariablen verwenden, und zwar HISTFILE , HISTFILESIZE und HISTSIZE .
HISTFILE—/home/<username>/.bash_history HISTFILESIZE—1000 HISTSIZE—1000
- Die HISTATEI Die Variable gibt den Namen und den Speicherort Ihres Bash-Verlaufs .bash_history an Datei.
- Die HISTFILESIZE gibt die maximale Anzahl von Befehlen an, die in einer Verlaufsdatei gespeichert werden können..
- Die HISTSIZE Die Variable gibt an, wie viele zwischengespeicherte Befehle eine Shell-Sitzung in der Verlaufsdatei speichern soll.
Sobald Sie 1000 Linux-Befehle erreicht haben, werden die ältesten Befehle verworfen, während neue gespeichert werden.
$ echo $HISTSIZE $ echo $HISTFILESIZE $ echo $HISTFILE
Standardmäßig werden jedem Benutzer, einschließlich root, diese Variablen und Größen zugewiesen. Wenn Sie Änderungen vornehmen möchten, bearbeiten Sie die .bashrc Datei in Ihrem Home-Verzeichnis und setzen Sie die Größenvariablen auf 2000 Befehle wie gezeigt:
# control the size of the history file export HISTSIZE=2000 export HISTFILESIZE=2000
Um die neuen Werte zu verwenden, ohne sich ab- und wieder anzumelden, können Sie die .bashrc ausführen Datei.
$ source .bashrc
Sie können bestätigen, dass Ihre neuen Werte jetzt für Ihre aktuelle Shell und alle Subshells aktiv sind.
$ echo $HISTSIZE $ echo $HISTFILESIZE
So vermeiden Sie das Speichern doppelter Befehle im Verlauf
Wenn Sie allgemeine Befehle nicht in Ihrem Bash-Verlauf speichern möchten, können Sie HISTIGNORE verwenden -Variable, um das Speichern allgemeiner Befehle wie ls zu vermeiden , pwd und Verfügbarkeit , die normalerweise nicht sehr interessant für die Prüfung sind.
Wenn Sie keine doppelten Befehle speichern möchten, verwenden Sie einfach das HISTCONTROL Variable, die Ihren Verlauf anweist, doppelte Einträge zu ignorieren.
Öffnen Sie die .bashrc Datei in Ihrem Home-Verzeichnis und fügen Sie die folgenden Einträge hinzu:
# ignore common commands export HISTIGNORE=”:pwd:id:uptime:resize:ls:clear:history:” # ignore duplicate entries export HISTCONTROL=ignoredups
Stellen Sie nach dem Hinzufügen der obigen Variablen sicher, dass Sie den folgenden Befehl ausführen, um neue Werte zu verwenden.
$ source .bashrc
Der Bash-Verlauf ist ein nützliches Werkzeug, aber es kann eine Herausforderung darstellen, wenn Sie mit seinen Optionen und seiner Verwendung nicht vertraut sind. Es gibt viele weitere Optionen, die in der Geschichte zugänglich sind. Weitere Informationen finden Sie in den Manpages.