En este artículo explicaremos cómo borrar directorios y su contenido en Linux usando los comandos rm y rmdir.
Hay varias maneras de borrar un directorio en Linux. Si usas un entorno de escritorio como Gnome, puedes eliminar archivos o directorios usando la interfaz gráfica, pero si estás en un servidor y no tienes interfaz gráfica o bien quieres eliminar varios directorios a la vez, lo mejor es usar la línea de comandos.
Consideraciones previas
- Al borrar un directorio con un entorno gráfico de escritorio, el directorio se mueve a la Papelera y se puede recuperar fácilmente.
- Mucho cuidado con el uso de los comandos rm y rmdir que vamos a explicar en este artículo porqué una vez usados los comandos para borrar carpetas o directorios no se podrán recuperar por completo.
- En la mayoría de sistemas de archivos Linux, borrar un directorio requiere permisos de escritura en el directorio y dentro del contenido. De lo contrario, obtendrás el error «Operación no permitida».
Borrando un directorio con el comando rmdir
rmdir es el comando de linux para borrar directorios vacíos. Es útil cuando quieres eliminar un directorio sólo si está vacío.
La sintaxis del comando rmdir es la siguiente:
rmdir [opciones] carpeta(s)
Para eliminar un directorio con rmdir escribe el comando seguido del nombre del directorio que quieres eliminar. Ejemplo con un directorio llamado «test»:
rmdir test
Si el directorio no está vacío, obtendremos el siguiente error:
rmdir: fallo al borrar 'test': El directorio no está vacío
Si el directorio está vacío lo eliminará.
Opciones del comando rmdir
–ignore-fail-on-non-empty | No devuelve mensaje de error en caso de que el directorio no esté vacío. Aunque no aparezca el error no eliminará el directorio. | |
-p | –parents | Borra el directorio y sus antecesores. |
-v | –verbose | Muestra un mensaje por cada directorio procesado. |
–help | Muestra la ayuda del comando. | |
–version | Informa de la versión del comando. |
Borrar directorios usando el comando rm
rm es el comando de Linux que sirve para borrar archivos pero también nos puede servir para eliminar directorios sin necesidad de que estén vacíos. Esa es la diferencia entre el comando rm y rmdir.
La sintaxis del comando rm es la siguiente:
rm [opciones] archivo
Para borrar un directorio no vacío, con todo su contenido (carpetas y archivos) usamos la opción -r o -R (recursivo):
rm -r test
Esto eliminará la carpeta «test» junto a todos los archivos y directorios que se encuentren dentro de ella.
Para borrar un directorio vacío con el comando rm usamos la opción -d (–dir):
rm -d test
Para borrar varios directorios a la vez usamos el comando con las opciones que queramos seguido de todas las carpetas separadas por espacios:
rm -f directorio1 directorio2 directorio3
Si algún directorio o archivo está protegido contra escritura nos pedirá confirmación para borrarlo. Para forzar y borrar todos los archivos y directorios de manera recursiva de un directorio usamos la opción -r y -f:
rm -rf directorio
Opciones del comando rm
-f | –force | Descarta los ficheros y argumentos que no existan, sin preguntar. |
-i | Pregunta antes de cada borrado. | |
-I | Pregunta una vez antes de borrar más de tres ficheros, o cuando se borra recursivamente. Menos intrusivo que -i pero protege contra posibles errores al borrar. | |
–interactive[=CUANDO] | Pregunta en función del CUANDO. Nunca, una vez (-i) o siempre (-I). Sin el CUANDO pregunta siempre. | |
–one-file-system | Cuando se borra una jerarquía recursivamente, salta cualquier directorio que esté en un sistema de ficheros distinto de aquel que corresponde con la línea de comandos. | |
–no-preserve-root | No tratar «/» especialmente. | |
–preserve-root | No remover «/» (por defecto ya es así). | |
-r, -R | –recursive | Eliminar directorios y su contenido de manera recursiva. |
-d | –dir | Elimina directorios vacíos. |
-v | –verbose | Muestra información de lo que está ocurriendo al ejecutar el comando. |
–help | Muestra las opciones y ayuda del comando. | |
–version | Muestra la versión del comando. |