Ich habe eine Reihe von Antworten auf ähnliche Fragen sowohl in diesem Forum als auch anderswo gelesen, aber ich kann es nicht für mich nutzen.
Ich versuche, Ctrl neu zuzuordnen +W um das Wort weiter zu löschen eher als rückwärts. Ich weiß, dass ich Esc verwenden kann +D tun Sie dies, aber dies ist auch eine Lernübung für mich.
Unter Verwendung dessen, was ich gelesen habe, habe ich Folgendes in ~/.inputrc
hinzugefügt :
$include /etc/inputrc
Control-w: kill-word
- Die erste Zeile ist anscheinend erforderlich, wenn ich die anderen Bindungen einbeziehen möchte.
- Als zweites habe ich
Control-w
ausprobiert und"\C-w"
, und für den Befehl habe ichkill-word
versucht undshell-kill-word
. - Um die Änderungen auszuprobieren, habe ich
bind -f ~/.inputrc
ausprobiert , Strg +X , Strg +R ,bash -l
und öffnen Sie einfach ein neues Terminal.
Ich nehme an, dass ich einen wichtigen Schritt verpasst oder einfach falsch verstanden habe, aber mir gehen die Ideen aus.
Ich verwende Centos 8.
Akzeptierte Antwort:
Die readline-Bibliothek (was inputrc
configures) richtet Bindungen ein, die den Bindungen des Terminaltreibers für gekochte Eingaben entsprechen. Diese werden allgemein als stty-Tasten bezeichnet, da sie mit dem Befehl stty
konfiguriert werden können . Strg +W ist die Bindung zum Löschen des vorherigen Wortes (werase
) in der gekochten Terminalschnittstelle.
Diese Bindungen haben Vorrang vor expliziten Bindungen in .inputrc
. Um dieses Verhalten zu deaktivieren, fügen Sie diese Zeile zu Ihrer .inputrc
hinzu :
set bind-tty-special-chars off
Wenn Sie keine nicht standardmäßigen gekochten Terminal-Tastenzuordnungen mit stty
konfiguriert haben , ich denke, das wird Ihre Bash-Bindungen nicht beeinflussen.