Ich habe ein Dienstprogramm in bash geschrieben, mit read -e
dem eine Eingabeaufforderung für SQL-ähnliche Abfragen bereitgestellt wird. Manchmal sind diese lang, daher möchte ich vi öffnen, die aktuelle Zeile bearbeiten und beim Beenden die Zeile durch den Inhalt in vim ersetzen können. Ich lese Zeilen mit read
. Etwas wie:
query> select .... from .... very long... <ctrl-e>
jetzt in vi
select .... from .... very long...
bearbeiten zu
select ...
from ....
very long ...
Ausfahrt vi
query> select ...
from ....
very long ... <enter>
Abfrage wird ausgeführt.
UPDATE: Die Verwendung von 'set -o vi' vor dem 'read -e' scheint für mich <esc>v
der richtige Weg zu sein, aber derzeit enthält das Öffnen des Puffers nicht das, was sich in der Zeile befindet, sondern eine andere Abfrage aus meinem Verlauf (aber nicht die, die ich vorher getippt habe).
read
Befehl?
DEFINE _EDITOR = vim
Ihrer Frage hinzufügen, welches Datenbanksystem Sie verwenden.