Die Funktion Ctrl+ Rzum Rückwärtssuchen des Shell-Verlaufs wird von der von Bash verwendeten Readline- Bibliothek bereitgestellt . Die entsprechende Funktion zum Vorwärtssuchen im Verlauf ist standardmäßig an Ctrl+ gebunden S.
Jedoch ist das Problem , dass die Terminal - Treiber bereits verwendet diese Tastenkombination für Flusssteuerung : Drücken Ctrl+ S stoppt oder unterbricht Text an das Endgerät gedruckt wird und Ctrl+ Q nimmt die Strömung von Zeichen an das Endgerät gesendet.
Diese Einstellungen sind für die meisten Endgeräte auf GNU / Linux-Systemen standardmäßig aktiviert, so dass Bash / Readline die Ctrl+ -Tastenfolge nie sieht S, da sie vom Terminaltreiber abgefangen und nie an die Shell weitergeleitet wird.
Dieses Verhalten (auch als XON / XOFF-Flusssteuerung bezeichnet ) kann durch Ausführen von deaktiviert werden:
stty -ixon
Jetzt wird die Tastenkombination Ctrl+ San Bash / Readline übergeben.
Alternative Tastenkombination
Wenn Sie möchten, dass Readline eine andere Tastenkombination für die Vorwärtssuche verwendet bind
, aktivieren Sie mit dem Befehl eine andere Tastenzuordnung , z. B. Ctrl+ F(für Weiterleiten). NB: Alle Angebote sind erforderlich.
bind '"\C-f": forward-search-history'
Ändern Sie die Konfiguration, um diese Änderungen beizubehalten
Die Steuerung des Terminalflusses ist auf modernen Geräten nicht besonders nützlich. Daher würde ich empfehlen, den folgenden Befehl auszuführen, wenn ein neues Terminal oder Pseudo-Terminal gestartet wird:
stty -ixon
.bashrc
Wäre wahrscheinlich eine gute Startdatei, um diesen Befehl auszuführen, da die Datei für interaktive Bash-Shells bereitgestellt wird. Wenn dies .bashrc
nicht durch .profile
oder erfolgt .bash_profle
, sollte der obige stty
Befehl zu der Startdatei hinzugefügt werden, die für die Login-Shells verwendet wird.
In der Readline-Konfigurationsdatei können .inputrc
Sie eine andere Tastenzuordnung verwenden, z. B. Ctrl+ F, um den Verlauf vorwärts zu durchsuchen :
bind "\C-f": forward-search-history
Ähnliche Links
man bash
) vorwärts suchen , aber anscheinend funktioniert das nicht bei der Mint- oder Ubuntu: / Bash-Verlaufssuche. Ein partieller + Aufwärtspfeil könnte für eine andere Lösung relevant sein.