Gibt es eine Möglichkeit, das Verhalten des Bash-Verlaufs zu beeinflussen?

Gibt es eine Möglichkeit, das Verhalten des Bash-Verlaufs zu beeinflussen?

Im Terminal ist der Bash-Verlauf oft hilfreich, wenn Sie nach einer Befehlszeile suchen, die Sie bereits verwendet haben. Aber gibt es eine Möglichkeit, das Verhalten des Bash-Verlaufs zu beeinflussen (also welche Befehle gespeichert werden, wie lange sie gespeichert werden, wie viele gespeichert werden usw.)?

Antwort1

Mehrere Variablen steuern das Verhalten Ihres Verlaufs:

  • HISTCONTROL: steuert, wie Werte in Ihrem Verlauf gespeichert werden. Die Werte ignorespace, ignoredupsund erasedupskönnen hier eingegeben werden (durch Doppelpunkt trennen).
  • HISTFILE: Legt den Speicherort der Verlaufsdatei fest.
  • HISTFILESIZE: Legt die maximale Zeilenanzahl in Ihrer Verlaufsdatei fest.
  • HISTIGNORE: hat eine Liste von Mustern, die die Bash ignoriert (siehedie andere Antwortfür die Syntax).
  • HISTSIZE: enthält eine Anzahl von Zeilen, die in der aktuellen Shell gespeichert werden.
  • HISTTIMEFORMAT: enthält einen Ausdruck, wie ein Eintrag formatiert wird (sieheandere Antwort)

Antwort2

Zeitstempel für den Verlauf festlegen:

  • Standardmäßig wird der Verlauf nicht mit einem Zeitstempel versehen, aber es ist einfach, ihn so zu konfigurieren, dass er einen Zeitstempel anzeigt. Sie müssen lediglich eine Umgebungsvariable festlegen.HISTTIMEFORMAT.

    export HISTTIMEFORMAT="%h/%d - %H:%M:%S "

  • Führen Sie den Verlauf erneut aus, um das Ergebnis anzuzeigen. Alt-Text
  • Wenn Sie die Befehle nicht im Verlauf speichern möchten, dann

    export HISTSIZE=0

VARIABLEN:

  • HISTFILE – Steuert, wo die Verlaufsdatei gespeichert wird.
  • HISTFILESIZE – Steuert, wie viele Verlaufsbefehle in HISTFILE gespeichert werden sollen.
  • HISTSIZE – Steuert, wie viele Verlaufsbefehle in der Verlaufsliste der aktuellen Sitzung gespeichert werden sollen.
  • HISTIGNORE – Steuert, welche Befehle ignoriert und nicht in der Verlaufsliste gespeichert werden.

Notiz:

  • Wenn Sie das Terminal schließen, gehen Ihre Einstellungen verloren. Wenn Sie die Einstellungen also dauerhaft behalten möchten, fügen Sie den obigen Befehl zu ~/.bashrcoder hinzu ~/.bash_aliases.

Antwort3

Sie könnten eine Zeile wie diese hinzufügen

export HISTFILESIZE=5000

um ~/.bashrcdie Größe des Verlaufs zu erhöhen. Standardmäßig werden Befehle, die mit einem Leerzeichen beginnen, nicht gespeichert. Das liegt daran, dass export HISTCONTROL=ignorebothdies in Ubuntu standardmäßig global aktiviert ist.

Sie können auch Befehle ignorieren, die mit beginnen loder whichverwenden

export HISTIGNORE="l*:which*"

Antwort4

Es gibt eine Möglichkeit, dem Verlauf zu sagen, dass er sich einen Befehl NICHT merken soll: Beginnen Sie einfach mit einem Leerzeichen. Es gibt auch eine sehr einfache Möglichkeit, einen bestimmten Befehl abzurufen: Geben Sie STRG+R und ein Wort aus dem gesuchten Befehl ein.

Es gibt sicherlich eine Möglichkeit, den Standardverlauf, der standardmäßig 500 Zeilen umfasst, zu verlängern, aber ich weiß nicht, wie das geht, tut mir leid!

verwandte Informationen