GNU/Linux >> Tutoriales Linux >  >> Linux

¿Archivos Cat en un orden específico según el número en el nombre de archivo?

Tengo archivos llamados file.88_0.pdb , file.88_1.pdb , ... , file.88_100.pdb . Quiero cat para que file.88_1.pdb se pega después de file.88_0.pdb , file.88_2.pdb después de file.88_1.pdb , y así. Si hago cat file.88_*.pdb > all.pdb , los archivos se juntan en el siguiente orden:0 1 10 11 12 13 14 15 16 17 18 19 2 20... , etc. ¿Cómo los pongo juntos para que el orden sea 0 1 2 3 4 5 6... ?

Respuesta aceptada:

Usar brace expansion

cat file.88_{0..100}.pdb >>bigfile.pdb

Para ignorar la impresión de mensajes de error para archivos inexistentes, utilice:

cat file.88_{0..100}.pdb >>bigfile.pdb 2>/dev/null

En el zsh shell también tienes el (n) calificador global para solicitar un numérico clasificación (a diferencia del valor predeterminado alfabético) ) para globos:

cat file.88_*.pdb(n) >>bigfile.pdb 2>/dev/null

Linux
  1. ¿Orden de redirecciones?

  2. ¿Cómo ocultar archivos con una extensión específica?

  3. Use el comando fallocate para crear archivos de tamaño específico en Linux

  4. Cómo mostrar líneas específicas de un archivo en la línea de comandos de Linux

  5. 10 ejemplos de comandos Cat para administrar archivos en Linux / UNIX

Cómo tar tipos de archivos específicos (extensiones) en un directorio

Cómo copiar archivos con una extensión de archivo específica recursivamente

Cómo excluir una extensión de archivo específica al copiar archivos de forma recursiva

Cómo encontrar archivos basados ​​en la marca de tiempo en Linux

Cómo encontrar archivos que contengan una cadena de texto específica en Linux

Manera fácil de fusionar archivos con el comando Cat