Comando rm -rf en Linux con ejemplos

El comando rm en UNIX significa eliminar y, de forma predeterminada, se usa para eliminar archivos. Es un comando simple pero poderoso, especialmente cuando se usa con opciones como -rf, que le permite eliminar directorios que no están vacíos a la fuerza.

Eliminación de archivos en Linux:

El comando rm , de forma predeterminada, no puede eliminar directorios y solo funciona en archivos. 

$ mkdir A
$ touch B.txt
$ rm B.txt
$ rm A

What Actually “rm -rf” Command Do in Linux?

Usamos los comandos mkdir y touch para crear directorios y archivos de texto respectivamente, y el comando ls para listar archivos en el directorio de trabajo actual.

Eliminación de varios archivos en Linux:

Para eliminar varios archivos a la vez, podemos escribir nombres de archivos separados por espacios después del comando rm o usar un patrón para eliminar varios archivos que se ajusten al patrón.

$ rm a b
$ rm *.txt        [Pattern]             
What Actually “rm -rf” Command Do in Linux?

eliminando varios archivos

Eliminación de un directorio en Linux:

Para eliminar un directorio, puede usar el modificador -r o -R, que elimina un directorio de forma recursiva, incluido su contenido (subdirectorios y archivos). Si es un directorio vacío, también puede usar el comando rmdir .

$ rm a/
$ rm -R a/
What Actually “rm -rf” Command Do in Linux?

eliminando directorio

Eliminación de archivos con solicitud de confirmación:

Para obtener un mensaje de confirmación al eliminar un archivo, use la opción -i.

$ rm -i a.txt
What Actually “rm -rf” Command Do in Linux?

eliminar archivos con confirmación

Eliminación de directorios con solicitud de confirmación:

Para obtener un mensaje de confirmación al eliminar un directorio y sus subdirectorios, use la opción -R y -i.

$ rm -Ri A/
What Actually “rm -rf” Command Do in Linux?

eliminación de directorios con confirmación

Eliminación de archivos o directorios a la fuerza:

Para eliminar un archivo o directorio a la fuerza, puede usar la opción -f forzar una operación de eliminación sin que rm le pida confirmación. Por ejemplo, si un archivo no se puede escribir, rm le preguntará si desea eliminar ese archivo o no, para evitar esto y simplemente ejecutar la operación.

$ rm -f a.txt

Cuando combina los indicadores -r y -f, significa que elimina de forma recursiva y forzada un directorio (y su contenido) sin solicitar confirmación.

$ rm -rf B

Aquí, creamos un archivo de texto y un directorio y lo hicimos de solo lectura tomando su acceso de escritura usando el comando chmod .

What Actually “rm -rf” Command Do in Linux?

Mostrar información durante la eliminación:

Para mostrar más información al eliminar un archivo o directorio, use la opción -v, esto habilitará el comando rm para mostrar lo que se está haciendo en la salida estándar.

$ rm -rv *

What Actually “rm -rf” Command Do in Linux?

¿Es el comando rm -rf a prueba de balas?

rm -rf tan poderoso como es, solo puede omitir el acceso de solo lectura de archivos anidados y no de directorios. Para eliminar el directorio (B/C) necesitamos acceder a él a través de privilegios de superusuario.

What Actually “rm -rf” Command Do in Linux?

No se recomienda usar este comando como superusuario si no está 100% seguro de lo que está haciendo, ya que puede eliminar archivos importantes.

El comando “rm -Rf /”:

Siempre debe tener en cuenta que «rm -rf» es uno de los comandos más peligrosos, que nunca debe ejecutar en un sistema Linux, especialmente como root. El siguiente comando borrará todo en su partición raíz (/).

$ sudo rm -rf /

What Actually “rm -rf” Command Do in Linux?

Hay comprobaciones para evitar la eliminación de la raíz, pero la opción adicional de omitir la raíz no conservada es a prueba de fallas. Es un meme en Internet que es equivalente a la eliminación de system32 en la unidad C:\ del sistema operativo de Windows.

$ sudo rm -rf / --no-preserve-root

No debe usar el comando anterior en ningún caso, para los curiosos lo hice usando el comando con –no-preserve-root. Y después de la eliminación de algunos archivos y directorios importantes, no me quedó nada más que la salida colgada que se muestra a continuación.

What Actually “rm -rf” Command Do in Linux?

Crear alias para el comando rm en Linux:

Para usar la opción -i de forma permanente por seguridad, agregue un alias en su archivo $HOME/.bashrc .

alias rm="rm -i"

Obtenga su archivo .bashrc como se muestra o abra una nueva terminal para que los cambios surtan efecto.

$ source $HOME/.bashrc

Ahora, cada vez que ejecute rm, se invocará con la opción -i de forma predeterminada (pero usar el indicador -f anulará esta configuración).

What Actually “rm -rf” Command Do in Linux?

¿RM realmente elimina un archivo?

rm en realidad no elimina los archivos, sino que los desvincula (libera la memoria para su uso posterior). Para eliminar permanentemente los datos, puede usar el comando shred o dd .

Publicación traducida automáticamente

Artículo escrito por vabs y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *