This article is also available in the following other languages / Dieser Beitrag ist auch in folgenden anderen Sprachen verfügbar: English

Bash History konfigurieren

2020-01-05 - christian - bash, linux, shell

Für Borg Backup stand ich vor der Frage, wie ich Environment Variablen definieren kann, ohne dass diese in der ~/.bash_history landen. In der man page stieß ich dann auf HISTCONTROL.

Standards auf einer Debian Buster Installation:

borg@borg:~$ set | grep HIST
HISTCONTROL=ignoreboth
HISTFILE=/mnt/backup/borg/.bash_history
HISTFILESIZE=2000
HISTSIZE=1000

HISTCONTROL

Diese Environment Variable steuert wie die ausgeführten Befehle in der Historie abgelegt werden. Die Befehle können mit einem Doppelpunkt getrennt kombiniert werden.

  • ignorespace: Alle Befehle welche mit Leerzeichen beginnen werden nicht in die History aufgenommen. Praktisch für das definieren von Environment Variablen welche Passwörter enthalten.
  • ignoredups: Wird ein Befehl Zeichengenau wiederholt, wird die Wiederholung nicht in die History aufgenommen.
  • erasedups: Bevor der zuletzt ausgeführte Befehl in die History gespeichert wird, werden alle Duplikate in der Historie entfernt.

Beispiel:

HISTCONTROL="ignorespace:erasedups"
export HISTCONTROL

HISTFILE

Der Pfad der Datei in welche die History gespeichert wird.

Ist die Variable nicht definiert, wird keine History gespeichert.

HISTSIZE & HISTFILESIZE

Anzahl der Befehle welche in der History bzw der History-Datei gespeichert werden.


serverless.industries BG by Carl Lender (CC BY 2.0)
fa7dff93 2020-10-25 21:40