Incorporación de comandos rm a scripts Bash

watch 3m, 26s
views 2

15:21, 03.12.2025

Contenido del artículo
arrow

  • Cómo añadir rm a los scripts Bash
  • Conclusión

La gestión adecuada de los archivos es crucial cuando se trabaja con los scripts bash. Entre una gran variedad de tareas, probablemente la más importante está relacionada con la eliminación de directorios y archivos. Para este propósito, normalmente, se utiliza el comando rm. Con el uso de rm, los usuarios pueden ir más allá y automatizar el proceso de eliminación. Simplifica mucho más el proceso, pero también es importante ser precavido cuando se trabaja con información crítica.

En esta guía, obtendrá toda la información básica sobre el comando rm, su uso, varios ejemplos comunes y mucho más.

Sin embargo, antes de que expliquemos algunos de los casos más usados, aclaremos que discutiremos el uso en sistemas basados en Linux, con la versión 4.0 y posteriores del shell bash, y deberías tener algunos conocimientos básicos de los scripts bash.

Cómo añadir rm a los scripts Bash

Dependiendo del caso de uso específico, la incorporación del comando rm en el script bash puede variar ligeramente. Aquí compartiremos algunas de las variantes estándar y otras más complejas para que tengas una mejor comprensión de su uso y algunas medidas de seguridad.

Ejemplo 1. Comencemos con la eliminación de un solo archivo en un script bash, el proceso se ve de la siguiente manera:

#!/bin/bash
rm /path/to/drf.txt
echo "deleted"

Aquí, deberá especificar el pase al archivo necesario en lugar de drf.txt.

Ejemplo 2. Para eliminar varios ficheros con el mismo comando, el proceso es el siguiente:

#!/bin/bash
rm /pathtonecessaryfiles/*.txt  

 *.txt significa que se eliminarán todos los archivos txt del directorio mencionado. Este comando debe utilizarse con precaución porque podría eliminar los datos necesarios.

Ejemplo 3. Para eliminar el directorio completo con todos los archivos, se debe utilizar el siguiente comando:

#!/bin/bash
rm -r /pathtodirectory

Esta opción suele ser necesaria para eliminar las carpetas enormes.

Ejemplo 4. Para forzar la eliminación de un archivo específico sin necesidad de confirmación, se puede utilizar la siguiente variante:

#!/bin/bash
rm -f /pathtofile.txt

Es una buena opción para eliminar archivos protegidos.

Ejemplo 5. El uso de este comando con sentencias if puede hacer el proceso más inteligente al mencionar detalles adicionales como los siguientes:

#!/bin/bash 
if [ -f /pathtofile.txt ]; then
rm /pathtofile.txt
echo "Deleted"
else
echo "Hasn’t found"
fi

Este script se puede utilizar para la detección del archivo específico antes de la eliminación para que no haya errores en caso de que no se haya encontrado el archivo.

Ejemplo 6. La combinación de find y rm puede ayudar con el borrado selectivo donde se pueden especificar ciertos criterios como sigue:

#!/bin/bash
find /pathtodirectory -name "*.log" -type f -mtime +15 -exec rm {} \;
echo "Deleted"  

Con este script, usted busca los archivos de registro que tienen más de 15 días y los elimina. Esta es una variante maravillosa para la automatización del proceso de eliminación de archivos innecesarios.

Ejemplo 7. Puede haber algunas situaciones en las que deba eliminar el archivo y garantizar que no se recuperará. Esto se puede hacer de la siguiente manera:

#!/bin/bash
shred -u /pathtofile.txt
rm /pathtofile.txt

Esta es una variante ideal cuando se desea eliminar datos de la forma más segura. Como puede ver, junto con el comando rm, también se utiliza shred para la prevención de la recuperación.

Ejemplo 8. Aquí hay un ejemplo más del uso del comando rm para los escenarios en los que desea comprobar la existencia del directorio/archivo antes de la eliminación. Esto se puede hacer de la siguiente manera:

#!/bin/bash 
if [ -z "$1" ]; then
echo "Usage: $0 "
exit 1 fi if [ -e "$1" ]; then
rm -r "$1"
echo "Deleted"
else
echo "Haven’t found"
fi

Conclusión

Todos los ejemplos del uso del comando rm deben ser aplicados con seguridad para la prevención de algunas consecuencias desagradables. Espero que ahora usted tenga una mejor comprensión de la incorporación de rm en los scripts de bash y automatizará significativamente algunas tareas.

Compartir

¿Te ha resultado útil este artículo?

Ofertas populares de VPS

-10%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
400 GB HDD
Bandwidth
Bandwidth
300 Gb
KVM-HDD HK 16384 Linux

40.34 /mes

/mes

Facturado cada 12 meses

-8.8%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
400 GB HDD
Bandwidth
Bandwidth
300 Gb
wKVM-HDD HK 16384 Windows

45.72 /mes

/mes

Facturado cada 12 meses

-4.7%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
40 GB HDD
Bandwidth
Bandwidth
300 Gb
wKVM-HDD HK 1024 Windows

10.35 /mes

/mes

Facturado cada 12 meses

CPU
CPU
10 Epyc Cores
RAM
RAM
64GB
Space
Space
400 GB NVMe
Bandwidth
Bandwidth
Unlimited
Keitaro KVM 65536
OS
CentOS
Software
Software
Keitaro
/mes

Facturado mensualmente

-9.4%

CPU
CPU
8 Xeon Cores
RAM
RAM
32 GB
Space
Space
200 GB SSD
Bandwidth
Bandwidth
Unlimited
wKVM-SSD 32768 Windows

99.5 /mes

/mes

Facturado cada 12 meses

-21.5%

CPU
CPU
2 Xeon Cores
RAM
RAM
2 GB
Space
Space
75 GB SSD
Bandwidth
Bandwidth
300 GB
wKVM-SSD 2048 HK Windows

26 /mes

/mes

Facturado cada 12 meses

-9.5%

CPU
CPU
4 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-wKVM-SSD 8192 Windows

121.5 /mes

/mes

Facturado cada 12 meses

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
60 GB HDD
Bandwidth
Bandwidth
Unlimited
KVM-HDD 2048 Linux

7.7 /mes

/mes

Facturado cada 12 meses

-20.5%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
150 GB SSD
Bandwidth
Bandwidth
10 TB
KVM-SSD 16384 Metered Linux

95 /mes

/mes

Facturado cada 12 meses

-9.4%

CPU
CPU
8 Epyc Cores
RAM
RAM
32 GB
Space
Space
200 GB NVMe
Bandwidth
Bandwidth
Unlimited
wKVM-NVMe 32768 Windows

102.8 /mes

/mes

Facturado cada 12 meses

Otros artículos sobre este tema

cookie

¿Acepta las cookies y la política de privacidad?

Utilizamos cookies para asegurar que damos la mejor experiencia en nuestro sitio web. Si continúa sin cambiar la configuración, asumiremos que acepta recibir todas las cookies del sitio web HostZealot.