Wie verlasse ich den Bash-History-Suchmodus?

25

In Ubuntu 12.04 benutze ich CTRL- R, um eine Reverse-History-Suche durchzuführen. Wenn der gewünschte Befehl nicht gefunden wird (nach Wiederholung CTRL- R), wie kann ich sofort zur (leeren) Eingabeaufforderung zurückkehren, ohne dass ein historischer Befehl in der Befehlszeile eingegeben oder ausgeführt wurde?

MountainX
quelle
1
Ich kann nicht glauben, dass ich das gegoogelt habe und dass es schon gefragt und beantwortet wurde: D
Nikhil

Antworten:

17

Sie können verwenden:

  • Der Befehl zum Beenden der Emacs-Tastatur, Ctrl- G. Standardmäßige Tastenkombinationen bashsind absichtlich Emacs-ähnlich.
  • Der Vi-Stil kehrt zu den normalen Tastenkombinationen zurück, Escoder Ctrl- [(sie sind dasselbe).
  • Sende ein SIGKILL Signal, Ctrl- C.

Die ersten beiden haben den geringsten sichtbaren Effekt.

Alexios
quelle
{Grinsen} Sie können die Anzeige von "^ C" verhindern, wenn Sie stty -ctlechoIhren Startdateien (.bashrc, .profile, .zshrc usw.) hinzufügen. Jetzt haben ALLE drei Methoden den geringsten sichtbaren Effekt.
Lornix
Aus irgendeinem Grund funktionieren Esc und Strg-C nicht auf den Ubuntu-Systemen, die ich ausprobiert habe (einschließlich meines aktuellen 12.04).
MountainX
@lornix: Ich hätte gerne visuelles Feedback von Strg-C. Stellen Sie sich die psychologischen Auswirkungen des Drückens von Strg-C vor, bevor Sie einen Befehl wie rm -rf /(extremes Beispiel) senden, weggehen und dann zum Terminal zurückkehren. Das birgt natürlich einiges an Witzpotential.
Alexios