
Dos comandos realizan la tarea pesada cuando necesitas eliminar un directorio en Linux: rm y rmdir. Se ven similares a primera vista, pero se comportan de manera muy diferente. Elegir el incorrecto en el directorio equivocado puede eliminar mucho más de lo que pretendías, y Linux no tiene una papelera de reciclaje.
Esta guía cubre ambos comandos, todas las opciones útiles y las situaciones en las que cada uno es aplicable.
Linux rm y rmdir: resumen de comandos
Antes de ejecutar cualquier comando de eliminación, asegúrate de saber dónde estás en el sistema de archivos. El comando pwd muestra tu directorio de trabajo actual; ls lista lo que hay en él. Ambos valen la pena ser ejecutados antes de eliminar cualquier cosa.
Aquí está la referencia rápida sobre qué comando hace qué:
Opciones de rm de un vistazo:
rm -d– eliminar un directorio vacíorm -r– eliminar recursivamente un directorio y todo su contenidorm -f– omitir las solicitudes de confirmación al eliminar archivos protegidos contra escriturarm -rf– eliminación recursiva, sin solicitudes, con o sin protección de escriturarm -i– preguntar antes de cada eliminaciónrm -I– solicitar una sola vez si se están eliminando más de 3 archivosrm *– coincidencia de comodines que coincide con múltiples caracteresrm ?– coincidencia de comodines que coincide con exactamente un carácter
Opciones de rmdir:
rmdir -p– eliminar un subdirectorio vacío y su padrermdir -v– imprimir confirmación de que el directorio fue eliminado
La regla general: usa rmdir cuando estés seguro de que el directorio está vacío y quieras protección contra eliminación accidental de archivos. Usa rm -r cuando necesites eliminar también el contenido del directorio.
Antes de ejecutar cualquier comando de eliminación en Linux, siempre ten una copia de seguridad actual. Estos comandos son permanentes. No hay deshacer.
Eliminar directorios vacíos con rmdir
rmdir es la opción más segura para eliminar directorios vacíos. Simplemente se niega a funcionar en un directorio que todavía contiene algo: archivos, subdirectorios, enlaces simbólicos, y devuelve este error:
rmdir: failed to remove 'Directory': Directory not emptyEse comportamiento es intencionado. Previene que accidentalmente elimines un árbol de directorios cuando pensabas que ya estaba limpio.
Sintaxis básica:
rmdir DirectoryNamePara eliminar múltiples directorios vacíos en un solo comando, enuméralos como argumentos separados:
rmdir Directory_1 Directory_2 Directory_3Eliminar un subdirectorio y su padre
La opción -p elimina un subdirectorio y asciende por la ruta, eliminando cada directorio padre si también está vacío después de que el hijo ha sido eliminado:
rmdir -p /Directory/SubDirectoryEsto elimina Subdirectorio primero, luego Directorio, pero solo si Directorio no contiene nada más en ese momento.
Confirmar eliminación con -v
La opción -v imprime un mensaje por cada directorio eliminado. Útil al eliminar múltiples directorios y quieres verificar qué se eliminó realmente:
rmdir -v Simple-Directory
rmdir: removing directory, 'Simple-Directory'Eliminar directorios no vacíos con rm -r
rm es un comando de eliminación de archivos, pero combinado con -r (recursivo), se convierte en la herramienta estándar para eliminar árboles de directorios. La bandera recursiva le dice que descienda a los subdirectorios y elimine todo: archivos, carpetas, todo.
Eliminación recursiva básica:
rm -r Simple-DirectoryAdvertencia: Esto elimina el directorio y todo lo que hay dentro de él de manera permanente. La recuperación requiere una copia de seguridad.
Omitir solicitudes de protección contra escritura con -rf
Cuando un directorio o su contenido están protegidos contra escritura, rm hará una pausa y pedirá confirmación antes de cada archivo. Si estás seguro de lo que estás eliminando, -rf omite todas las solicitudes:
rm -rf Simple-DirectoryUsa esto con cuidado. La combinación de recursivo y forzar es la variante más destructiva del comando. Verifica la ruta antes de ejecutarla.
Eliminar múltiples directorios a la vez
Puedes pasar múltiples nombres de directorio como argumentos para eliminarlos todos en una sola operación de eliminación de directorios en Linux:
rm -r Directory_1 Directory_2 Directory_3Eliminar archivos en Linux usando el comando rm
A veces quieres eliminar archivos específicos de un directorio sin tocar la estructura del directorio en sí. rm también se encarga de eso.
Eliminar un solo archivo de tu directorio de trabajo actual:
rm file.txtEliminar múltiples archivos a la vez:
rm file1.txt file2.txt file3.txtEliminar un archivo en un directorio diferente especificando su ruta:
rm dir/subdir/file.txtEliminación segura con banderas de confirmación
La opción -i solicita antes de cada eliminación. Más lento, pero seguro cuando estás eliminando archivos que no has revisado recientemente:
rm -i file1.txt file2.txt file3.txtEl terminal pedirá un S/N en cada archivo. Si estás eliminando un gran lote y solo quieres una confirmación, usa -I en su lugar:
rm -I file1.txt file2.txt file3.txtPara omitir todas las confirmaciones, incluidas las de archivos protegidos contra escritura, usa -f:
rm -f file.txtUsando comodines para eliminar múltiples archivos
Los comodines te permiten hacer coincidir grupos de archivos con un solo comando en lugar de enumerarlos individualmente. El asterisco coincide con cualquier número de caracteres; el signo de interrogación coincide exactamente con uno.
Eliminar todos los archivos .txt en el directorio actual:
rm *.txtEliminar todos los archivos que comienzan con la letra ‘a’:
rm a*Eliminar archivos con extensiones de un solo caracter:
rm *.?Advertencia: Ejecuta ls primero para ver exactamente qué archivos coincide un patrón de comodín antes de usarlo con rm. Los comodines no se preocupan por la importancia de los archivos.
Gestión de archivos VPS a través del terminal SSH
En un VPS o servidor dedicado, ejecutarás estos comandos a través de SSH. Conéctate desde una aplicación de terminal o cliente SSH, en Linux y macOS eso es el terminal integrado; en Windows, PuTTY o Windows Terminal funcionan bien.
Si prefieres no gestionar archivos a través de la línea de comandos, la mayoría de los proveedores de VPS te permiten instalar un panel de control. CyberPanel y cPanel ofrecen un administrador de archivos con una interfaz gráfica, útil para tareas únicas, aunque más lento que la línea de comandos para cualquier tarea repetitiva.
Para un acceso rápido sin instalar software adicional, muchos proveedores ahora incluyen un terminal basado en navegador directamente en el panel de control de VPS. Ábrelo, autentícate y estarás ejecutando comandos bash desde cualquier navegador sin un cliente SSH local.
Cualquiera que sea el método de acceso que uses, los comandos linux rm y rmdir se comportan de manera idéntica. Lo único que cambia es cómo llegas al aviso.
Referencia rápida: rm vs rmdir
rmdir– solo directorios vacíos, seguro por defecto, devuelve un error si el directorio tiene contenidorm -d– equivalente de rm para directorios vacíosrm -r– elimina directorios no vacíos recursivamente; no se puede deshacerrm -rf– recursivo, sin solicitudes; usar solo cuando estés seguro de lo que estás apuntandorm -i– modo interactivo; confirmación antes de cada eliminaciónrm * / rm ?– comodines para eliminación por lotes; verificar conlsantes de ejecutar
La operación de eliminación de directorios de linux que hace que los administradores tengan problemas es casi siempre rm -rf apuntando a la ruta equivocada. Sin prisa, verifica la ruta con pwd y ls, luego ejecuta. Esos cinco segundos adicionales previenen una tarde muy mala.