Error al eliminar un directorio con muchos archivos – /bin/rm: Argument list too long

Cuando se intenta eliminar un directorio que tiene cientos de archivos, y al hacer un rm * aparece el siguiente mensaje:

web:/var/spool/mqueue# rm *
 -su: /bin/rm: Argument list too long

La solución es primero listar todos los archivos y 1 por 1 eliminarlos, quizas sea algo lento pero seguro, para eso utilizamos el siguiente comando:

Aquí varias posibles soluciones:

Dentro del directorio:

# find . -name ‘*’ | xargs rm
# ls | xargs rm
# cd /var/spool/mqueue
# for f in *; do rm -f $f; done

Tambien se puede por ejemplo eliminar archivo menores a 8k:

# find /var/spool/mqueue -size -8k -exec rm -f {} ;

Y después de algo de minutos listo!! el directorio esta vacío!.