Cron Jobs - Tarefas Agendadas
O Cron permite agendar comandos para executar automaticamente em horários definidos.
Editar o crontab:
crontab -e
Formato do Cron:
# ┌───────── minuto (0-59)
# │ ┌─────── hora (0-23)
# │ │ ┌───── dia do mês (1-31)
# │ │ │ ┌─── mês (1-12)
# │ │ │ │ ┌─ dia da semana (0-7, 0 e 7 = domingo)
# │ │ │ │ │
# * * * * * comando
Exemplos práticos:
# A cada 5 minutos
*/5 * * * * /caminho/do/script.sh
# Todo dia às 3h da manhã
0 3 * * * /usr/bin/backup.sh
# Toda segunda-feira às 8h
0 8 * * 1 /usr/bin/relatorio.sh
# Dia 1 de cada mês às 00h
0 0 1 * * /usr/bin/limpeza.sh
# A cada hora
0 * * * * /usr/bin/verificar.sh
Listar cron jobs ativos:
crontab -l
Ver logs do cron:
grep CRON /var/log/syslog
Dicas:
- Sempre use caminhos absolutos nos comandos
- Redirecione a saída para um log:
comando >> /var/log/meuscript.log 2>&1 - Teste o comando manualmente antes de agendar
- Use crontab.guru para gerar expressões cron facilmente