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?

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.

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


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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.