Hintergrund
Ich habe gehört, dass dieZeile lesenModul liest ~/.inputrc
und auf diese Weise ändert es das Verhalten von Tastenanschlägen unter Programmen wie Bash.
Frage
Wie kann ich dies nach der Bearbeitung neu laden, um das geänderte Verhalten zu sehen, ohne mein Terminalprogramm neu zu starten?
Antwort1
Standardmäßig C-x C-r
ist an gebunden re-read-init-file
.
Sehen Sie sich dieBash-Referenzhandbuchzur Erläuterung.
Antwort2
Sie können neue Einträge auch über die Befehlszeile neu laden, indem Sie verwenden bind -f ~/.inputrc
. Dadurch werden die Einträge in .inputrc geladen. Beachten Sie, dass nur ein Laden und kein „Neuladen“ durchgeführt wird. Es werden also keine Zeilen zurückgesetzt, die Sie zufällig aus .inputrc entfernt haben.
Um schnell von vorne zu testen, führen Sie es einfach aus bash
und arbeiten Sie darin (oder starten Sie ein neues Terminal).
Antwort3
Das hat bei mir funktioniert
bind -f ~/.inputrc
https://unix.stackexchange.com/questions/153357/inputrc-file-not-sourcing-correctly/246422#246422
Antwort4
Das hat bei mir funktioniert:
exec $SHELL
Dadurch wird die aktuelle Shell erneut ausgeführt, ohne dass ein Unterprozess erstellt wird. Dabei werden alle üblichen Initialisierungen und Skript-Lesvorgänge ausgeführt, sodass alle neuen oder geänderten Einstellungen in /etc/inputrc, ~/.profile, ~/.bashrc usw. wirksam werden.