Escribir líneas en un archivo desde menos

17

Mientras vimestoy en puedo escribir un rango de líneas del archivo que estoy viendo a otro archivo. Por ejemplo,

:1,10 w outfile.txt

escribirá las líneas 1 a 10 para outfile.txt.

¿Puedo hacer lo mismo mientras estoy usando un archivo less?

eebbesen
fuente

Respuestas:

17
10Gmm1G|mcat > outfile.txt

(escrito dentro less) parece funcionar siempre que la entrada no quepa en una pantalla (en cuyo caso, toda la entrada termina outfile.txtpor alguna razón).

  • 10G te lleva a la línea 10
  • mmestablece la mmarca allí
  • 1G(igual que gen este caso) lo lleva a la línea 1
  • |m tubería desde la línea actual para marcar m
  • cat > outfile.txt: eso se canaliza a ese comando.
Stéphane Chazelas
fuente
Tuve que pegar el comando en el indicador porque escribir 10Gme llevó a la décima línea antes de que pudiera escribir el resto, pero de hecho funcionó.
eebbesen
2
@eebbesen, bueno, ese era el punto. Vea mi edición
Stéphane Chazelas
Gracias por aclarar @StephaneChazelas (así como por su respuesta inicial): ahora está claro.
eebbesen
1
genio al rescate otra vez :)
Ramesh
4

Podrías usar viewcual es lo mismo quevi -r

X Tian
fuente
44
Eso funcionará, pero para los archivos grandes que prefiero usar less, tengo entendido que vihace que todo el archivo se cargue de una vez.
eebbesen