Ich bearbeite meine PS1-Eingabeaufforderung und möchte meinen bashrc nicht weiter beschaffen, um ihn zu aktualisieren (da mein bashrc auch andere Dinge zurücksetzt). Ich möchte es auch nicht immer wieder kopieren und einfügen. Gibt es eine Möglichkeit, die Variable interaktiv zu bearbeiten, z. B. mit nano
(meinem Standardeditor)?
Die PS1 ist meistens ein Beispiel, weil ich das gleiche mit anderen Vars machen möchte. Der Grund, warum ich es interaktiv machen möchte, ist, dass die Variable bereits ziemlich lang ist und ich nur ein paar Zeichen darin bearbeiten muss. Und ich muss es nur in der aktuellen Shell ändern.
quelle
PS1='$PS1'
Tippen wurden zwar die Anführungszeichen gelöscht, aber das TippenPS1=\'$PS1\'
funktioniert einwandfrei.bind -p
ich auch herausgefunden, dass Sie Globs, Tildes und Verlaufslinien erweitern können. Ordentlich!Anstatt den bashrc zu beziehen, geben Sie eine andere Datei ein, die nur die Variable enthält.
Erstelle es:
Hinweis: Wenn die Variable einfache Anführungszeichen enthält, müssen Sie einen Befehl verwenden, der ihnen entkommen kann, z.
Öffnen Sie es in einem Editor, z
nano /tmp/PS1
.nano
, können Sie es in einem anderen Terminal / TTY ausführen oder einen grafischen Editor verwenden.Nehmen Sie Ihre Änderungen vor und speichern Sie.
Quelle:
Wiederholen Sie die Schritte 3 und 4 nach Bedarf.
quelle
Zsh verfügt über eine integrierte Funktion
vared
, mit der Sie eine Variable inline bearbeiten können. Ich habe meine eigene Version geschrieben, die ursprünglich auf Super User gepostet wurde :Beachten Sie, dass dies einige subtile Unterschiede zum eingebauten Zsh aufweist, z.
vared $
)Um die PS1 zu bearbeiten, starte sie einfach
vared PS1
.quelle