El comando rm en Linux es una de las herramientas más importantes y delicadas para la administración de archivos desde la terminal. Permite eliminar archivos y directorios de forma permanente, por lo que un uso incorrecto puede causar pérdida de información. En esta guía aprenderás cómo usar rm paso a paso, sus principales opciones y las mejores prácticas para evitar errores.
¿Qué es el comando rm?
El comando rm se utiliza para borrar archivos y directorios del sistema de archivos en Linux y otros sistemas tipo Unix. Es una herramienta básica, pero poderosa, que forma parte del conjunto de utilidades GNU Coreutils.
Se usa comúnmente para:
- Eliminar archivos individuales.
- Borrar múltiples archivos al mismo tiempo.
- Eliminar directorios completos (con o sin su contenido).
Sintaxis del comando rm
La sintaxis general del comando es la siguiente:
rm [opciones] archivo1 archivo2 ...
Para eliminar directorios, se requiere un parámetro adicional:
rm [opciones] -r directorio/
Principales parámetros del comando rm
-i (interactive)
Solicita confirmación antes de eliminar cada archivo.
rm -i archivo.txt
Uso recomendado cuando se trabaja manualmente y se quiere evitar errores.
-f (force)
Fuerza la eliminación sin pedir confirmación, incluso si el archivo no existe o no tiene permisos de escritura.
rm -f archivo.txt
Advertencia: este parámetro es peligroso si se usa incorrectamente.
-r o -R (recursive)
Elimina directorios y todo su contenido de forma recursiva.
rm -r carpeta/
-v (verbose)
Muestra en pantalla qué archivos o directorios están siendo eliminados.
rm -rv carpeta/
Muy útil para auditoría o aprendizaje.
Combinación común (uso crítico)
rm -rf carpeta/
Esta combinación elimina un directorio completo sin confirmación. Debe usarse únicamente cuando se tiene total certeza del destino.
Ejemplo y practicas
Entrono trabajo
Para realizar los siguientes ejemplos, partimos de la siguiente estructura de directorios y archivos, vamos a crear el siguiente directorio:
mkdir ~/practica-rm
Accedemos al directorio de trabajo
cd ~/practica-rm
Creamos los archivos de prueba con los que vamos a trabajar
touch archivo1.txt archivo2.log archivo3.conf
Ahora crearemos algunos directorios dentro de practica-rm
mkdir logs tmp
Crearemos archivos dentro de los directorios creados anteriormente
touch logs/app.log logs/error.log
touch tmp/prueba.txt
Por ultimo, verificamos que tengamos el escenario de trabajo con listar los archivos
ls -R
Respuesta
/home/usuario/practica-rm/
├── archivo1.txt
├── archivo2.log
├── archivo3.conf
├── logs/
│ ├── app.log
│ └── error.log
└── tmp/
└── prueba.txt
Nos ubicamos en el directorio de trabajo:
cd ~/proyectos
Eliminar un archivo simple
El uso más básico de rm es borrar un solo archivo.
rm archivo1.txt
Qué ocurre:
archivo1.txtse elimina definitivamente.- No se muestra ningún mensaje si la operación es exitosa.
Eliminar varios archivos a la vez
Podemos borrar múltiples archivos en un solo comando.
rm archivo2.log archivo3.conf
Qué ocurre:
- Ambos archivos son eliminados de forma permanente.
Uso de -i (modo interactivo)
El parámetro -i solicita confirmación antes de eliminar cada archivo.
rm -i prueba.txt
Salida esperada:
rm: remove regular file 'prueba.txt'?
Qué ocurre:
-
Solo se elimina el archivo si confirmas con
y.
Uso de -v (modo detallado)
El parámetro -v muestra en pantalla qué se está eliminando.
rm -v archivo1.txt
Salida típica:
removed 'archivo1.txt'
Muy útil para ver exactamente qué está haciendo el comando.
Eliminar directorios vacíos (error común)
Si intentas borrar un directorio sin opciones adicionales:
rm logs/
Resultado:
rm: cannot remove 'logs/': Is a directory
Esto ocurre porque rm no elimina directorios por defecto.
Uso de -r (eliminación recursiva)
Para borrar un directorio y todo su contenido:
rm -r logs/
Qué ocurre:
- Se elimina el directorio
logs. - Todos los archivos dentro también se eliminan.
Uso combinado -r -i (seguridad adicional)
Para confirmar cada archivo dentro del directorio:
rm -ri logs/
Qué ocurre:
- Se solicita confirmación por cada archivo y subdirectorio.
- Ideal para evitar borrados accidentales.
Uso de -f (forzar eliminación)
El parámetro -f elimina archivos sin pedir confirmación, incluso si no existen o no tienen permisos.
rm -f archivo_inexistente.txt
Qué ocurre:
- No se muestra error.
- El comando finaliza silenciosamente.
Uso crítico rm -rf
Esta es la combinación más peligrosa y también la más utilizada en scripts.
rm -rf tmp/
Qué ocurre:
- Elimina el directorio
tmpy todo su contenido. - No solicita confirmación.
- No muestra errores.
Advertencia: un error en la ruta puede causar pérdida total de información.
Uso de comodines (wildcards)
Eliminar archivos por patrón:
rm *.log
Qué ocurre:
-
Se eliminan todos los archivos con extensión
.logen el directorio actual.
Buena práctica previa:
ls *.log
Preguntas frecuentes
¿El comando rm se puede deshacer?
No. rm elimina archivos de forma permanente. No existe papelera en la terminal.
¿Cuál es la diferencia entre rm y rm -rf?
rm elimina archivos, mientras que rm -rf elimina directorios y su contenido sin confirmación.
¿Cómo borrar archivos sin riesgo en Linux?
Usando rm -i, verificando con ls y evitando comodines sin revisión previa.