LinuxParty
Actualización de errores 2022-08-03 - 08:12. Buscar directorios vacíos con el fin de borrarlos, es una de las cosas que tenemos que hacer los administradores, para evitar buscar en directorios que algunas veces no contienen ya ningún valor.
A veces, lo primero que hicimos fue buscar ficheros antiguos, y tras borrarlos, lo mejor es borrar ahora esos directorios antiguos, que en muchas ocasiones estárán ya vacíos.
Con la siguiente línea de comandos, lograremos eliminar todos los directorios que estén vacíos a partir de el directorio en el que nos encontremos (.):
find . -type d -empty -print0 | xargs -0 rmdir # OPCION NO MUY RECOMENDADA
Particularmente a mi me gusta tener el control de lo que se va a eliminar, por lo que usaré la siguiente expresión regular:
find . -type d -empty -print | awk '{print $0}'
Pero redigiría la entrada a un script, para que tenga toda la salida ordenada, y en su caso pueda editarlo para borrar los directorios realmente requeridos
find . -type d -empty -print | awk '{print "rmdir -v", "\""$0"\""}' | sort | uniq > script-que-borra.sh
Antes de su ejecución vería el contenido de "script-que-borra.sh" con vim, joe, nano, kate, kwrite, o tu editor favorito y realmente eijo lo que quiero borrar.
Después le puedo dar permisos de ejecución
chmod a+x script-que-borra.sh y lo ejecuto:
./script-que-borra.sh, o simplemente uso bash escribiendo:
bash script-que-borra.sh (y no hace falta darle permisos de ejecución)
Otra forma sencilla y sin discriminación es usando find para buscar, le indicamos que queremos buscar directorios (-type d), que estén vacíos (-empty), y los mostramos por pantalla (print), posteriormente, al resultado de este comando le pasamos la orden de borrado de directorio usando Xargs.

-
Programación
- Caja de herramientas de los programadores de Linux
- LinuxParty, el 11-S, Fallos HD, y Resucitamos como el Ave Fénix.
- A Linus no le gusta C++
- PHP5 Vs. CakePHP Vs. RubyOnRails.
- Curso / Manual de Programación Shell.
- Desarrolladores de código abierto no se deciden por la GPLv3
- LinuxParty, está en proceso de Mejora.
- Qué significa Foo ? Qué Significa Bar ? Foo y Bar
- Ensamblador en Linux, (asm) DesktopLinuxAsm - Programs
- Simulación de Ensamblador: GNU 8085 Simulator 1.3.2
- Portar código fuente C/C++ de Windows a Linux.
- Virtualización para reconciliar el código GLP y no GLP
Prueba con este comando:
Evita usar la opción "rm -R" para borrados recursivos.