In den meisten Unix-Shells ersetzt die Pfeiltaste ↑
den Befehl, der vom vorherigen Befehl im Verlauf bearbeitet wird. Der Verlauf kann mit dem Befehl angezeigt werden history
.
↑
kann mehr als einmal gedrückt werden, um in der Geschichte aufzusteigen.
Meine Frage ist:
Wie kann ich meine Shell so konfigurieren, dass ↑
alle Befehle übersprungen werden, die mit dem aktuellen identisch sind?
In der Tat gebe ich oft viele make
hintereinander ein. Wenn ich einen älteren Befehl erneut eingeben (oder geringfügig ändern) möchte, muss ich ↑
viele Male drücken, um alle make
Befehle zu überspringen .
Ich weiß, dass dies ↑
keineswegs der einzige Tipp ist, der die Produktivität der Schale erhöht.
Bonus:
- Geben Sie eine Konfiguration an, die für die Bash-Shell funktioniert.
- Bewahren Sie den Verlauf auf (es kann hilfreich sein, zu wissen, dass Sie einen Befehl mehrmals hintereinander eingegeben haben).
bash
zsh
command-history
Gabriel Devillers
quelle
quelle
setopt histignoredups
macht den Job aber unterdrückt auch Duplikate aus der Geschichtehistexpiredupsfirst
, die ich auch benutze, nicht sinnvoll. Duplikate verfallen zuerst, bevor das Alter betrachtet wird. (Ich spreche hier von zsh)