GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo copiar las líneas 10 a 15 de un archivo en otro archivo, en Unix?

En complemento a la respuesta anterior, puede utilizar una de las siguientes 3 soluciones.

sed

Imprima solo las líneas en el rango y rediríjalas al archivo de salida

sed -n '10,15p' file1.txt > file2.txt

combinación de cabeza y cola

Use cabeza y cola para cortar el archivo y obtener solo el rango que necesita antes de redirigir la salida a un archivo

head -n 15 file1.txt | tail -n 6 > file2.txt

wow

Imprima solo las líneas en el rango y rediríjalas al archivo de salida

awk 'NR>=10 && NR<=15' file1.txt > file2.txt

Abra una terminal con un shell y luego

sed -n '10,15p' file1.txt > file2.txt

Simple y fácil.

Si desea agregar al final en lugar de borrar file2.txt , usa >> para la redirección.

sed -n '10,15p' file1.txt >> file2.txt
                          ^^

AWK también es un poderoso manipulador de texto de línea de comandos:

awk 'NR>=10 && NR<=15' file1.txt > file2.txt

Linux
  1. Cómo copiar permisos y propiedad de archivos a otro archivo en Linux

  2. ¿Cómo agregar varias líneas a un archivo?

  3. Cómo contar líneas en un archivo en UNIX/Linux

  4. ¿Cómo dividir un archivo de texto en varios archivos *.txt?

  5. ¿Cómo truncar el archivo por líneas?

Cómo dividir un archivo grande en partes en números de línea dados

Cómo unir varias líneas en una en un archivo en Linux

Cómo convertir un archivo de Windows a un archivo UNIX

¿Cómo copiar un archivo de otro directorio al actual?

Cómo hacer eco en un archivo

¿Cómo copio una carpeta con archivos a otra carpeta en Unix/Linux?