Limpieza automática de logs antiguos (Versión Bash)

En este artículo técnico de jesusninoc.com, te mostramos cómo encuentra y elimina archivos con extensión .log modificados hace más de 30 días utilizando un script corto en Bash de forma nativa en Linux.

Código del Script (Bash)

#!/bin/bash
RUTA=${1:-/var/log}

echo "Iniciando limpieza de logs de más de 30 días en: $RUTA"

find "$RUTA" -type f -name "*.log" -mtime +30 -exec rm -f {} \;

echo "Limpieza completada con éxito."

Explicación detallada del funcionamiento

Aplica find con la condición -mtime +30 para filtrar por antigüedad de modificación, ejecutando directamente rm -f para una purga silenciosa.

Análisis de Seguridad y Buenas Prácticas

🔒 Recomendaciones del Agente de Seguridad:

Acción destructiva irreversible. Se recomienda ejecutar find primero sin ‘-exec rm’ para validar los archivos seleccionados antes de automatizar.