Eliminar archivos es una operación fundamental, al igual que copiar archivos o renombrarlos/moverlos. En Linux, hay un comando dedicado, denominado rm - que le permite realizar todas las operaciones relacionadas con la eliminación. En este tutorial, discutiremos los conceptos básicos de esta herramienta junto con algunos ejemplos fáciles de entender.
Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos mencionados en el artículo han sido probados en Ubuntu 16.04 LTS.
comando rm de Linux
Entonces, en términos sencillos, simplemente podemos decir que el comando rm se usa para eliminar/eliminar archivos y directorios. La siguiente es la sintaxis del comando:
rm [OPTION]... [FILE]...
Y así es como la página de manual de la herramienta lo describe:
This manual page documents the GNU version of rm. rm removes each specified file. By default, it
does not remove directories.
If the -I or --interactive=once option is given, and there are more than three files or the -r,
-R, or --recursive are given, then rm prompts the user for whether to proceed with the entire
operation. If the response is not affirmative, the entire command is aborted.
Otherwise, if a file is unwritable, standard input is a terminal, and the -f or --force option is
not given, or the -i or --interactive=always option is given, rm prompts the user for whether to
remove the file. If the response is not affirmative, the file is skipped.
Los siguientes ejemplos con estilo de preguntas y respuestas le darán una mejor idea de cómo funciona la herramienta.
P1. ¿Cómo eliminar archivos usando el comando rm?
Eso es bastante fácil y directo. Todo lo que tiene que hacer es pasar el nombre de los archivos (junto con las rutas si no están en el directorio de trabajo actual) como entrada al comando rm.
rm [filename]
Por ejemplo:
rm testfile.txt
P2. ¿Cómo eliminar directorios usando el comando rm?
Si está intentando eliminar un directorio, debe usar -r opción de línea de comando. De lo contrario, rm arrojará un error diciendo que lo que está tratando de eliminar es un directorio.
rm -r [dir name]
Por ejemplo:
rm -r testdir
P3. ¿Cómo hacer que rm sea rápido antes de cada eliminación?
Si desea que rm le pregunte antes de cada acción de eliminación que realice, utilice -i opción de línea de comando.
rm -i [file or dir]
Por ejemplo, suponga que desea eliminar un directorio 'testdir' y todo su contenido, pero quiere que rm le pregunte antes de cada eliminación, así es como puede hacerlo:
rm -r -i testdir
P4. ¿Cómo forzar a rm a ignorar archivos inexistentes?
El comando rm le permite saber a través de un mensaje de error si intenta eliminar un archivo o directorio que no existe.
Sin embargo, si lo desea, puede hacer que rm suprima dichos errores/notificaciones; todo lo que tiene que hacer es usar -f opción de línea de comando.
rm -f [nombre de archivo]
P5. ¿Cómo hacer que rm prompt solo en algunos escenarios?
Existe una opción de línea de comando -I , que cuando se usa, se asegura de que el comando solo solicite una vez antes de eliminar más de tres archivos, o al eliminar de forma recursiva.
Por ejemplo, la siguiente captura de pantalla muestra esta opción en acción:no hubo ningún mensaje cuando se eliminaron dos archivos, pero el comando lo hizo cuando se eliminaron más de tres archivos.
P6. ¿Cómo funciona rm cuando se trata del directorio raíz?
Por supuesto, eliminar el directorio raíz es lo último que querría un usuario de Linux. Por eso, el comando rm no le permite realizar una operación de eliminación recursiva en este directorio de forma predeterminada.
Sin embargo, si desea continuar con esta operación por cualquier motivo, debe indicarlo a rm mediante --no-preserve-root opción. Cuando esta opción está habilitada, rm no trata el directorio raíz (/) de manera especial.
En caso de que desee conocer los escenarios en los que un usuario podría querer eliminar el directorio raíz de su sistema, diríjase aquí.
P7. ¿Cómo hacer que rm solo elimine directorios vacíos?
En caso de que desee restringir la capacidad de eliminación de directorios de rm a solo directorios vacíos, puede usar la opción de línea de comando -d.
rm -d [dir]
La siguiente captura de pantalla muestra la opción de línea de comando -d en acción:solo se eliminó el directorio vacío.
P8. ¿Cómo forzar a rm a emitir detalles de la operación que está realizando?
Si desea que rm muestre información detallada de la operación que se está realizando, puede hacerlo usando -v opción de línea de comando.
rm -v [file or directory name]
Por ejemplo:
Conclusión
Dado el tipo de funcionalidad que ofrece, rm es uno de los comandos más utilizados en Linux (como cp y mv). Aquí, en este tutorial, hemos cubierto casi todas las principales opciones de línea de comandos que proporciona esta herramienta. rm tiene un poco de curva de aprendizaje asociada, por lo que tendrá que pasar un tiempo practicando sus opciones antes de comenzar a usar la herramienta en su trabajo diario. Para obtener más información, diríjase a la página de manual del comando.