Indem Sie in vim einfügen, ändern Sie den Standard-Eingabestream. Da vim ein interaktives Programm ist, muss die Standardeingabe die Konsole sein.
Wenn Sie in vim anzeigen möchten, sollten Sie ihm sagen, dass Sie die Datei von stdin lesen (indem Sie das Argument -
angeben):
Alternativ können Sie auch more oder less :
verwenden %Vor% Diese letzteren beiden sind vorzuziehen. Wenn Sie in vim pipen, sieht Ihre "Datei" Änderungen und Sie können nicht mit einem direkten Befehl :q
beenden. Stattdessen müssen Sie quit durch :q!
erzwingen, was ein wenig klobig ist.
Auf der anderen Seite können Sie more oder less beenden, indem Sie einfach q
eingeben. Sehen Sie sich die Man-Page für diese beiden Programme an. Du wirst sie sehr oft benutzen.
Wie von Russell Silva in den Kommentaren empfohlen, können Sie vim im schreibgeschützten Modus öffnen, wenn Sie von stdin lesen. Geben Sie nur das Argument -R
an. Dann können Sie normal beenden, ohne die Überschreibung zu benötigen:
Das ist mir passiert, als ich versucht habe, es an die Hintergrundkonsole (& amp;) zu senden
Ein Skript verwendet:
%Vor%entfernen & amp; das Problem ist weg.