2016-04-12 8 views
1

This Antwort besagt, dass :w !tee aktuellen Puffer zu stdout schreibt. Warum und wie funktioniert es? Kann ich :x !tee oder :w !cat schreiben? Was bedeutet Ausrufezeichen in diesem Fall? (Ich nehme an, es erzwingt keine Operation.) Funktioniert es nur, wenn tee Befehl existiert (nicht unter Windows)?Wie funktioniert: w! Tee Arbeit in Vim

Antwort

3

! sagt vim, dass es ein Shell-Befehl und kein Dateiname ist. So gibt :w !tee oder :w !cat den vim-Puffer diesen Befehlen als Eingabe. Sie wiederum senden den Pufferinhalt an stdout.

Versuchen Sie :w !wc -l, dies gibt Ihnen die Anzahl der Zeilen in Ihrem Puffer auf stdout gedruckt.

Sie können auch die Ausgabe eines Befehls in den vim-Puffer lesen. Sie können den Befehl read mit einem Shell-Befehl verwenden. Beispiel: :read !date führt den Befehl date für die Shell aus und sendet die Ausgabe zurück an den vim-Puffer.

+0

Danke, es wird klarer für mich! Mit Ihrer Antwort gelang es mir, [Dokumentationsseite] zu finden (http://vim.wikia.com/wiki/Display_output_of_shell_commands_in_new_window). –

Verwandte Themen