Sie können die Ubuntu-Standardeinstellungen umkehren, indem Sie zwei Variablen festlegen (HISTIGNORE und HISTCONTROL). Verwenden Sie dazu die folgenden Befehle:
HISTIGNORE='!( *)'
HISTCONTROL=ignoredups
HISTCONTROL=ignoredups
Ändert das Verlaufsverhalten so, dass nur doppelte Zeilen ignoriert werden und Zeilen, die mit einem Leerzeichen beginnen, nicht ignoriert werden. (Sie können HISTCONTROL auch auf die leere Zeichenfolge (mit HISTCONTROL=
) setzen, wenn Sie Duplikate behalten möchten, dies ist jedoch normalerweise nicht erwünscht.)
HISTIGNORE='!( *)'
Lässt die Geschichte jede Zeile ignorieren, die nicht mit einem Leerzeichen beginnt: ( *)
würde mit jeder Zeile übereinstimmen, die mit einem Leerzeichen beginnt, aber die führende Zeile !
negiert die Übereinstimmung, sodass sie mit allem übereinstimmt, was nicht mit einem Leerzeichen beginnt. Und alles, was mit dem HISTIGNORE-Muster übereinstimmt, wird von der Geschichte ignoriert. (Diese letztere Option erfordert, dass bash mit aktiviertem extglob
, mit ausgeführt wird shopt -s extglob
, aber dies ist die Standardeinstellung unter Ubuntu.)
Wenn Sie dies dauerhaft machen möchten, vergessen Sie nicht, die beiden oben genannten Befehle in Ihre zu schreiben ~/.bashrc
.
.bashrc
.. ich brauchte das, um zu verhindern, dass bash allecd
s,ls
s und andere alltägliche Befehle aufzeichnet , die ich benutze; und für die wenigen Befehle, die ich in der Geschichte brauche, kann ich jetzt das Präfix verwenden ..