Estoy trabajando con dos archivos, necesito copiar unas líneas de un archivo y pegarlas en otro. Sé cómo copiar (yy) y pegar (p) en el mismo archivo. Pero eso no funciona para archivos diferentes, ¿cómo se hace?
Además, ¿hay alguna forma de cortar y pegar? He intentado buscar en Google, pero la mayoría de los recursos sólo hablan de copiar-pegar.
Dado que ya sabes cómo cortar/tirar el texto, aquí tienes algunas ideas para pegarlo de nuevo en otro archivo:
Edita el primer archivo, arrancando el texto que quieras. Luego abre tu segundo archivo desde vi (:e /ruta/al/archivo
) y pégalo
Abra ambos archivos juntos en una ventana dividida y navegue entre ellos usando Ctrl + w, Up<//<Down ya sea por:
vi -o /ruta/al/archivo1 /ruta/al/archivo2
Desde dentro del primer archivo, Ctrl + w, s
Utiliza las variaciones de d
como dd
para cortar.
Para escribir un rango de líneas en otro archivo puede utilizar:
:<n>,<m> w filename
Donde <n>
y <m>
son números (o símbolos) que designan un rango de líneas.
Para utilizar el portapapeles del escritorio, eche un vistazo a los comandos +g
.
Puede abrir el otro archivo y escribir :r archivo_a_copiar_de
. O puedes hacer un buffer. O ir al primer archivo, ir a la línea que quieres copiar, escribir "qY
, ir al archivo que quieres pegar y escribir "qP
.
"Nombre_del_buffer
, copia en el buffer. Y
es yank y P
es put. ¡Espero que eso ayude!