rm (Eliminar)
100%

Línea de Comandos · Lección 13

rm (Eliminar)

Aprende a eliminar archivos y directorios comprobando los destinos y eligiendo opciones más seguras de `rm`.

La orden rm elimina entradas del sistema de archivos. La eliminación desde la línea de comandos normalmente no envía los elementos a la papelera del escritorio y rm no incorpora una función para deshacer, así que confirma todos los destinos antes de ejecutarla.

Su sintaxis básica es:

rm [OPTIONS] FILE...

Eliminación de archivos

Para eliminar un archivo, pasa el nombre del archivo a rm.

$ rm file1

Puedes eliminar varios archivos a la vez listándolos uno tras otro.

$ rm notes.txt old-report.txt draft.md

Comprueba la ortografía y la ubicación antes de pulsar Enter. Una copia de seguridad o una versión almacenada en un sistema de control de versiones es un plan de recuperación más fiable que las herramientas de recuperación del sistema de archivos después de eliminar los datos.

Después de confirmar el destino, ¿qué orden elimina el archivo old-report.txt?

Previsualización de destinos con comodines

Los comodines del shell te permiten coincidir con varios archivos. Por ejemplo, esto elimina todos los archivos .tmp en el directorio actual:

$ rm *.tmp

Antes de usar rm con un comodín, es más seguro previsualizar la coincidencia con ls.

$ ls *.tmp
cache.tmp  test.tmp
$ rm *.tmp

Recuerda que el shell expande *.tmp antes de que rm se ejecute. Si el patrón coincide con más archivos de los esperados, rm recibirá todos ellos.

Planeas eliminar *.tmp. ¿Qué orden muestra primero las rutas no ocultas seleccionadas por el patrón sin borrarlas?

Solicitud de confirmación

Para un enfoque más seguro, usa la opción -i. Te pregunta antes de eliminar cada archivo.

$ rm -i important.txt
rm: remove regular file 'important.txt'? y

La opción -I es una protección menos intrusiva de GNU rm: pregunta una vez cuando la orden eliminaría más de tres archivos o actuaría de forma recursiva.

¿Qué orden solicita confirmación antes de eliminar cada archivo indicado?

Ignorar archivos ausentes con -f

La opción -f significa "force" (forzar). Ignora archivos inexistentes y no solicita confirmación.

$ rm -f old-cache.txt

Esto puede hacer que la limpieza de un script sea idempotente cuando un archivo generado quizá ya no exista. Como elimina la confirmación, no añadas -f solo para silenciar un error que no comprendes.

Eliminación de directorios

Por defecto, rm no puede eliminar un directorio.

$ rm projects
rm: cannot remove 'projects': Is a directory

Para eliminar un directorio y todo su contenido, usa -r o -R para eliminación recursiva.

$ rm -r old-project

Para un directorio vacío, rmdir es una alternativa más limitada:

$ rmdir empty-directory

rmdir falla si el directorio no está vacío, lo que protege su contenido frente a una eliminación recursiva.

¿Qué orden elimina old-cache/ únicamente si el directorio está vacío?

Comprobación de una eliminación recursiva

La eliminación recursiva puede borrar un árbol completo. Combinar -r con -f también suprime los prompts, por lo que rm -rf exige validar el destino con especial cuidado. Antes de cualquier eliminación recursiva, comprueba:

  • ¿Estás en el directorio que crees? Usa pwd.
  • ¿Tu comodín se expandió correctamente? Previsualiza con ls.
  • ¿La ruta es absoluta o relativa? /tmp/cache y tmp/cache son muy diferentes.
  • ¿Hay un espacio accidental? rm -rf old-project y rm -rf old project apuntan a rutas diferentes.

Utiliza -- antes de un destino que pueda comenzar con un guion para evitar que se interprete como una opción:

$ rm -- -old-name

No recurras a sudo simplemente porque rm informe de un error de permisos. Comprueba primero el destino y determina por qué tu cuenta no puede modificar el directorio que lo contiene. Una eliminación recursiva con privilegios puede dañar el sistema operativo o los datos de otros usuarios.

Utiliza -v cuando quieras que rm informe de cada eliminación realizada:

$ rm -rv old-project
removed 'old-project/notes.txt'
removed directory 'old-project'

Después de verificar el destino completo, ¿qué orden elimina old-project/ y todo su contenido sin suprimir los prompts normales?

Para practicar la eliminación en un entorno controlado, prueba estos laboratorios:

  1. Orden rm de Linux: eliminación de archivos - Aprende a utilizar la orden rm para eliminar archivos y directorios, incluidas opciones como -r e -i, y practica una eliminación segura y eficaz.
  2. Organización de archivos y directorios - Practica habilidades esenciales de administración de archivos en Linux, incluido el uso de rm para limpiar directorios innecesarios, mediante un ejercicio práctico.

Lección completada

Has completado rm (Eliminar)

Ahora puedes eliminar elementos del sistema de archivos tratando cada destino como irreversible.

  • Confirmar las rutas de archivo antes de eliminarlas.

  • Previsualizar las expansiones de comodines con una orden de solo lectura.

  • Solicitar confirmación con -i o -I.

  • Preferir rmdir cuando el directorio deba estar vacío.

  • Validar el destino completo antes de una eliminación recursiva.

Guarda tu progreso

Crea una cuenta gratuita para guardar esta lección y continuar en cualquier dispositivo.

Crear una cuenta gratuita
Siguiente Lección
Volver a Línea de Comandos