Gibt es eine Möglichkeit, Eingaben für Bash vorzuverarbeiten?


6

Ich möchte in der Lage sein, willkürliche Änderungen an Befehlszeilen zu definieren, die auftreten, bevor Bash sie überhaupt sieht, dh bevor irgendeine Art von Erweiterung erfolgt. Ist das möglich?

Ich versuche nicht, ein bestimmtes Problem zu lösen, ich bin wirklich nur neugierig, ob es möglich ist, genau diese Funktionalität zu erhalten, ohne meine eigene Shell zu schreiben.


Welche Art von Modifikationen? Wenn Sie nur Verknüpfungen zu Dingen möchten, verwenden Sie alias.
Jtbandes

> "Vor jeglicher Erweiterung." Ich möchte das komplette Neuschreiben von ganzen Kommandozeilen durchführen. Aliase und Shell-Funktionen sind die Einschränkung, die ich überwinden möchte.
Personman

Antworten:


2

Ich würde vorschlagen, dass Sie die Möglichkeit prüfen, die Readline-Funktion accept-line(Ctrl-m) in die Bash-Vervollständigungsfunktion (readline complete) zu binden, in der Sie die Zeile verarbeiten können und von dort aus ausführen können sollten.


Können Sie ein Beispiel geben, wie man das machen würde? Schlagen Sie vor, einen Bindebefehl zu verwenden, um das Verhalten von Cm zu ändern? Oder schlagen Sie vor, dass Complete eine Möglichkeit bietet, Accept-Line abzufangen?
Poindexter
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.