Shell Script para eliminar archivos temporales

Los archivos temporales en un entorno Linux son de escritura y lectura mundial, lo que significa que cualquier usuario en el sistema puede leer y escribir en el directorio temporal.

En la mayoría de los sistemas Linux, el directorio «/tmp» se usa como directorio temporal y cualquier usuario o proceso en el sistema puede usar este directorio para almacenar datos temporales. Pero ningún programa/usuario debe asumir que los datos almacenados en el directorio “/tmp” persistirán en el tiempo, solo deben usarse para un propósito temporal. Este script de shell demuestra la cantidad de archivos temporales en el directorio «/ tmp» y borra el directorio «/ tmp»

Acercarse:

  1. Contaremos el número de archivos temporales presentes en el directorio temporal, es decir, el directorio «/tmp» y mostraremos el recuento al usuario antes y después de eliminar los archivos temporales.
     
  2. Calculamos el nro. de archivos mediante el comando ‘ls’. El comando «ls» da una lista de todos los archivos presentes en el directorio, y usamos el comando «wc» para contar cuántas líneas se imprimen con el comando «ls». 
    ls /tmp | wc-l
     
  3. Finalmente, la eliminación de archivos temporales se completa ejecutando el comando «rm». Este comando toma el argumento «-rf» que le dice al comando «rm» que elimine todos los archivos de forma recursiva y forzada.
     
  4. Verificamos el código de retorno del comando de eliminación para verificar si el comando se ejecutó con éxito. En bash, el código de retorno del comando anterior se puede marcar b “$?” variable, si el valor de esta variable es igual a cero, entonces el comando anterior se ejecuta con éxito; de lo contrario, el comando anterior falló con algún otro código de retorno.
     
  5. El comando de eliminación puede fallar si hay algún archivo que se está abriendo actualmente o algún proceso ha adquirido bloqueo en ese archivo en el momento en que ejecutamos el comando de eliminación.

Código:

#!/bin/bash

# Script name script.sh
# Script for removing all temporary files from temporary directory

TMP_DIR="/tmp"
echo "Removing all temporary files from $TMP_DIR"
  
# Counting the number of temporary files
files=`ls -l $TMP_DIR | wc -l` 

echo "There are total $files temporary files/directory in $TMP_DIR"

rm -rf $TMP_DIR/*

if [[ "$?" == "0" ]];then
    echo "All temporary files successfully deleted"
else
    echo "Failed to delete temporary files"
fi

# Counting the number of temporary files
files=`ls -l $TMP_DIR | wc -l` 

echo "There are total $files temporary files/directory in $TMP_DIR directory"

Producción:

Ejecutando el guión

Antes de la ejecución asigna el permiso de estos scripts:

chmod +x script.sh 

Publicación traducida automáticamente

Artículo escrito por aman chourasiya 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 *