GNU/Linux >> Tutoriales Linux >  >> Linux

Dile a `ls` que imprima solo el nombre de archivo base

Mientras xargs -0 está destinado a ser utilizado para la entrada delimitada por \0 (como find -print0 ), ls no tiene tal opción para delimitar su salida de esta manera.

Sin embargo,

ls -1 /path/glob | tr '\n' '\0' | xargs -0 -n 1 basename

haría el truco para convertir nuevas líneas en nulos en el camino. Esto permite que xargs funcione con nombres que tienen espacios.

EDITAR:añadido -n 1 a xargs


Yo uso esto:

ls | tr '\n' '\n'

Da una lista como:

file1.mp3
file2.mp3
file3.mp3
...

ls -1 <path> | sed 's#.*/##'

Linux
  1. ¿Imprimir línea coincidente y línea enésima de la línea coincidente?

  2. ¿Solo devolver la cadena coincidente en Sed?

  3. ¿Configurar Xorg para usar solo una parte de la pantalla?

  4. ¿Qué significa la tilde (~) al final de un nombre de archivo?

  5. ¿Un comando para imprimir solo los últimos 3 caracteres de una cadena?

Cómo usar el comando xargs de Linux

¿Cómo decirle a Xargs qué argumento elegir?

¿Encontrar solo la primera aparición usando solo Grep?

¿Cómo usar el comando xargs en Linux?

Cambiar el orden de las líneas en un archivo

Grep en un archivo de registro enorme (> 14 GB) ¿solo los últimos x GB?