Como borrar todos los archivos o directorios vacíos de un directorio

Remove file and folders easily

Remove file and folders easily. Borrar archivos y directorios en GNU/Linux
Eliminar archivos y directorios vacios de forma fácil

A veces se puede dar en servidores GNU/Linux la ocasión de tener una gran cantidad de archivos vacíos o directorios, bajo un mismo directorio y estos pueden tener diversos nombres o ser generados automáticamente (archivos de cache o similares). Con la intención de borrar archivos, liberar inodos y además limpiar tus directorios, pasare a explicar algunos de los siguientes comandos que puedes utilizar.

Para los ejemplos tomare como directorio de trabajo myblog/wp-content/uploads

Borrar archivos vacíos de un directorio

Forma 1: Por tamaño de archivo cero (opción size 0)

find myblog/wp-content/uploads -size 0 -print0 | xargs -0 rm --

Este comando buscará todo aquel archivo de tamaño cero e imprimirá por pantalla la ruta del mismo. Al ser tomado como argumento del programa xargs con rm, borrará cada uno de ellos

Forma 2: Opción empty de find

find myblog/wp-content/uploads -type d -empty -print -delete

Quitando el parámetro -delete, veriamos solo la impresión de los archivos que iríamos a borrar, o al revés sino queremos mostrar la lista de borrados, quitaríamos el parámetro -print

Otra alternativa diferente sería usando xargs:

find myblog/wp-content/uploads -type f -empty -exec rm -f {} \;

Eliminar directorios vacíos

Por otro lado, una vez eliminemos archivos, podemos tener la situación de tener muchos directorios vacíos, para ello podríamos borrarlos con:

find myblog/wp-content/uploads -type d -empty -print -delete

Quitando el parámetro -delete, veriamos solo la impresión de los archivos que iríamos a borrar, o al revés sino queremos mostrar la lista de borrados, quitaríamos el parámetro -print

De esta forma con unos simples comandos podemos organizar mejor nuestra estructura de directorios y archivos en el servidor. Existen varios ataques de denegación de servicio basados en creación de millones de archivos vacíos para saturar la cantidad de inodos de un servidor, luego estos comandos pueden ser muy útiles en esas situaciones de ataque.


Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.