Me gustaría escribir todo el búfer en la salida estándar ( /dev/stdout
) en lugar del archivo y el siguiente comando funciona como se esperaba al editar el archivo:
:w >> /dev/stdout
Sugerencia: presione Control+ Lpara actualizar la pantalla.
Pero no funciona como se esperaba cuando intento hacer lo mismo desde la línea de comandos (de forma no interactiva ), por ejemplo:
$ echo This is example. | vim - '+:w >> /dev/stdout' '+:q!'
Vim: Reading from stdin...
Lo mismo con :w !tee
, :x! /dev/stdout
, :%print
y similar.
Antes de dejar de fumar, es decir: [Device] 1L, 17C appended
.
¿Hay alguna forma de forzar a vim a escribir la entrada estándar en la salida estándar en el medio de una tubería? Tal vez es de alguna manera amortiguado?
vim
para el análisis de archivos en lugar de sed
(por ejemplo, cambios complejos repetidos en masa a múltiples archivos grandes). El ejemplo no hace nada para mantenerlo simple y no hacer un posible duplicado de otra publicación .