Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save edilsonvilarinho/bde3627cc7f9206f97f08b236e853f84 to your computer and use it in GitHub Desktop.

Select an option

Save edilsonvilarinho/bde3627cc7f9206f97f08b236e853f84 to your computer and use it in GitHub Desktop.
Limpeza Automática de Logs com Crontab

Limpeza Automática de Logs com Crontab

Este repositório contém um script para realizar a limpeza automática de logs em dois diretórios específicos:

  • /opt/tomcat/Informata/InfoWSRF
  • /opt/tomcat/Informata/InfoWSSTB

📌 Objetivo

Remover arquivos antigos de log, mantendo os diretórios organizados e evitando o acúmulo de arquivos desnecessários.


🚀 Passo a Passo para Configuração

1️⃣ Criar o script de limpeza

Crie um arquivo para o script de limpeza:

sudo nano /opt/tomcat/limpa_logs.sh

Adicione o seguinte conteúdo:

#!/bin/bash
# Script para limpar os diretórios de log

# Caminhos dos diretórios
DIR1="/opt/tomcat/Informata/InfoWSRF"
DIR2="/opt/tomcat/Informata/InfoWSSTB"

# Exclui arquivos de log mais antigos que 7 dias
find "$DIR1" -type f -mtime +7 -exec rm -f {} \;
find "$DIR2" -type f -mtime +7 -exec rm -f {} \;

# Mensagem de conclusão
echo "Limpeza concluída em $(date)" >> /opt/tomcat/limpa_logs.log

2️⃣ Dar permissão de execução

sudo chmod +x /opt/tomcat/limpa_logs.sh

3️⃣ Adicionar ao Crontab

Abra o crontab para edição:

sudo crontab -e

Adicione a seguinte linha para executar o script diariamente às 2h da manhã:

0 2 * * * /opt/tomcat/limpa_logs.sh >> /opt/tomcat/limpa_logs_cron.log 2>&1

🔍 Explicação:

  • 0 2 * * *: Executa diariamente às 2h da manhã.
  • >> /opt/tomcat/limpa_logs_cron.log: Armazena os logs de execução.
  • 2>&1: Redireciona erros para o arquivo de log.

✅ Testando a execução manual:

sudo /opt/tomcat/limpa_logs.sh

Verifique os logs:

cat /opt/tomcat/limpa_logs.log

🎯 Próximos Passos:

Caso deseje adicionar a exclusão de arquivos vazios, é possível complementar o script com:

find "$DIR1" -type f -empty -delete
find "$DIR2" -type f -empty -delete

📌 Autor

Edilson Souza


Pronto! A limpeza agora está automatizada e os diretórios organizados!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment