/ / Lo que está mal en el siguiente enfoque (rm + xargs) - linux, bash, grep, xargs, rm

Lo que está mal en el siguiente enfoque (rm + xargs) - linux, bash, grep, xargs, rm

¿Alguien puede decirme qué es lo que está mal en la siguiente forma de eliminación de archivos que comienza con "#"?

Archivos en el directorio:

ola@ola:~/.scratch/hmm$ ls
five  #four  #one  six  #three  #two
ola@ola:~/.scratch/hmm$

ola@ola:~/.scratch/hmm$ ls . |grep "#.*" |xargs rm -rf
ola@ola:~/.scratch/hmm$ ls
five  six
ola@ola:~/.scratch/hmm$

Ps: Haciendo referencia a la siguiente pregunta

Bash: ¿Cómo elimino todos mis archivos de texto que comienzan con #?

Respuestas

0 para la respuesta № 1

ls podría listar los archivos en varias columnas, y su expresión regular no está anclada al principio del nombre de archivo, tampoco. Los nombres de archivos que contienen espacios en blanco también serán problemáticos.