Cheatsheet Cron Jobs
Agendador de tarefas Unix/Linux
Cron Jobs
Sem Categoria
Estrutura base de um Cron Job
# ┌──────── minute (0-59) # │ ┌────── hour (0-23) # │ │ ┌──── day (1-31) # │ │ │ ┌── month (1-12) # │ │ │ │ ┌─ weekday(0-7) # │ │ │ │ │ # * * * * * comando-a-executar
Cada asterisco (*) representa um campo da configuração do cron.
O cron lê da esquerda para a direita, e cada campo define quando o comando será executado.
Explicação campo a campo:
- minute (0-59) → o minuto exato da hora (por exemplo, 0 é à hora certa, 30 é meia hora).
- hour (0-23) → a hora do dia em formato 24h (3 = 03:00, 15 = 15:00).
- day (1-31) → o dia do mês.
- month (1-12) → o mês do ano.
- weekday (0-7) → o dia da semana (0 ou 7 = domingo, 1 = segunda-feira, etc.).
Depois dos cinco campos, vem o comando a executar — pode ser um script, um binário, ou qualquer linha válida de terminal.
Campos detalhados
Minute (0-59) → minuto da hora
Ex.: 0 = início da hora, 30 = meia hora
Hour (0-23) → hora do dia (formato 24h)
Ex.: 3 = 03:00, 15 = 15:00
Day (1-31) → dia do mês
Ex.: 1 = dia 1, 15 = dia 15
Month (1-12) → mês do ano
Ex.: 1 = Janeiro, 12 = Dezembro
Weekday (0-7) → dia da semana (0 ou 7 = Domingo)
Ex.: 1 = segunda, 5 = sexta
Gestão de Entradas do Crontab
crontab -e - Edit the crontab file.
crontab -l - List existing crontab entries.
crontab -r - Remove all crontab entries.
crontab -v - Display last time file contrab. (Warning: This option is only available on a few systems.)
Operadores
* → qualquer valor (todos)
Ex.: * * * * * → executa cada minuto
, → lista de valores
Ex.: 0 9,12,15 * * * → executa às 09:00, 12:00 e 15:00
- → intervalo de valores
Ex.: 0 9-17 * * * → executa todos os minutos 0 das 09:00 às 17:00
/ → passo (every)
Ex.: */15 * * * * → a cada 15 minutos
Atalhos comuns
@reboot → executa ao iniciar o sistema
@yearly ou @annually → 0 0 1 1 *
@monthly → 0 0 1 * *
@weekly → 0 0 * * 0
@daily → 0 0 * * *
@hourly → 0 * * * *
Exemplos
30 3 * * * /caminho/do/script.sh
Executar script às 3:30 da manhã todos os dias
0 23 * * 1-5 /caminho/do/backup.sh
Executar backup às 23:00 de segunda a sexta
*/15 * * * * /caminho/do/script.sh
Executar script a cada 15 minutos
@reboot /caminho/do/script.sh
Executar script no reboot do servidor
0 6,18 * * * /caminho/do/script.sh
Executar script às 6:00 e 18:00 todos os dias