Lo más cercano que he conseguido es
# rm /path/to/directory/*.*
pero eso no funciona para los archivos que no tienen una extensión...
Linux no utiliza extensiones. Es el creador del archivo quien decide si quiere que el nombre tenga una extensión. Linux mira el primer byte para saber con qué tipo de archivo está tratando.
Para eliminar todo lo que hay en un directorio utilice:
rm /path/to/directory/*
Puede utilizar la opción -r
, por ejemplo:
rm -r /ruta/directorio/*
para eliminar también cualquier subdirectorio (junto con todo su contenido) dentro del directorio del que está eliminando el contenido. De lo contrario, mostrará un error informando que no está eliminando el directorio.
Si quieres borrar sólo los archivos de /ruta/a/directorio puedes hacer
find /path/to/directory -type f -print0| xargs -0 rm
o
find /path/to/directory -type f -exec rm '{}' \;
Puedes hacer cargas con find
, la ventaja es que puedes listar lo que se encuentra sin pasarlo por rm
para que puedas ver lo que se borrará antes de empezar.
Si también quieres eliminar todos los subdirectorios y el propio directorio, puedes usar rm -rf /ruta/al/directorio
. Pero siempre revise dos veces su línea antes de presionar return, rm -rf
puede causar muchos estragos también, por ejemplo, si accidentalmente inserta un espacio después de la primera barra mientras tiene permisos de superusuario...