Gerador de Expressão Cron

Gerador de Expressão Cron

Gerador e validador de expressão cron grátis. Monte sua cron expression campo por campo, aplique presets e veja as próximas execuções. Suporta Linux...

Atualizado em maio de 2026

PLATAFORMA

LINGUAGEM

SCRIPT / COMANDO

EDITOR DE CAMPOS

0–59
0–23
1–31
1–12
0–6

PRESETS

EXPRESSÃO CRON

VÁLIDA
0 12 * * *

DESCRIÇÃO

"At 12:00"

CAMPOS

MINUTE 0 0
HOUR 12 12:00 PM
DAY * every day
MONTH * every month
WEEKDAY * any day of week

PRÓXIMAS EXECUÇÕES

#1 sáb., 18 de jul., 12:00
#2 dom., 19 de jul., 12:00
#3 seg., 20 de jul., 12:00
#4 ter., 21 de jul., 12:00
#5 qua., 22 de jul., 12:00

DICA: Linux / macOS

Cron padrão de 5 campos. Edite com `crontab -e`. Executa no fuso horário local — considere escrever schedules em UTC para evitar surpresas com horário de verão.

Gerador de Expressão Cron — Crie e Valide Cron Online

Monte qualquer expressão cron usando o editor de campos, aplique presets de schedule com um clique e veja as próximas 5 execuções — tudo no browser, sem cadastro. Insira o caminho do seu script e escolha a linguagem (PHP, Python, Node.js, Java…) para gerar a linha de crontab completa pronta para colar.

Esta ferramenta cobre os formatos mais usados: Unix/Linux de 5 campos, Quartz/Spring de 6 campos, AWS EventBridge, além de notas de integração específicas para Kubernetes, GitHub Actions, GitLab CI, PHP/Laravel, Python, Node.js e Docker.

Como Usar o Gerador de Expressão Cron

  1. Selecione a plataforma (Linux, GitHub Actions, AWS, Quartz, etc.) para usar o formato correto.
  2. Escolha a linguagem/runtime (PHP, Python, Node.js…) para preencher automaticamente o prefixo do interpretador.
  3. Informe o caminho do script para gerar a linha de crontab completa pronta para copiar.
  4. Ajuste os campos no editor (MIN, HORA, DIA, MÊS, DIA DA SEMANA) ou use um dos presets.
  5. Copie a expressão ou a linha completa com o botão Copiar ou Shift+Enter.

A entrada valida em tempo real — um badge verde confirma que a sintaxe está correta antes de copiar.

Campos da Expressão Cron Explicados

Uma expressão cron Unix padrão tem cinco campos separados por espaço:

┌───────── minuto        (0–59)
│ ┌─────── hora          (0–23)
│ │ ┌───── dia do mês    (1–31)
│ │ │ ┌─── mês           (1–12 ou JAN–DEZ)
│ │ │ │ ┌─ dia da semana (0–6, Dom=0, ou DOM–SAB)
│ │ │ │ │
* * * * *

Caracteres especiais

Caractere Significado Exemplo Lê-se
* Todo valor * * * * * A cada minuto
, Lista 0 9,17 * * * Às 9:00 e 17:00
- Intervalo 0 9 * * 1-5 Às 9:00, seg–sex
/ Passo */15 * * * * A cada 15 minutos
@ Alias @daily Uma vez por dia à meia-noite

@aliases comuns

Alias Equivalente Significado
@yearly 0 0 1 1 * 1º de janeiro à meia-noite
@monthly 0 0 1 * * Primeiro dia do mês à meia-noite
@weekly 0 0 * * 0 Domingo à meia-noite
@daily 0 0 * * * Todo dia à meia-noite
@hourly 0 * * * * Toda hora, no minuto :00
@reboot Uma vez na inicialização do sistema

Exemplos de Expressões Cron

Expressão Descrição Caso de uso
* * * * * A cada minuto Health checks, polling
*/5 * * * * A cada 5 minutos Coleta de métricas
0 * * * * Toda hora, no minuto :00 Relatórios horários
0 0 * * * Todo dia à meia-noite Backups diários
0 9 * * 1-5 Dias úteis às 9:00 Jobs em horário comercial
0 2 * * * Todo dia às 2:00 ETL/sync noturno
0 0 * * 0 Domingo à meia-noite Limpeza semanal
0 0 1 * * Dia 1 de cada mês Faturamento mensal
*/15 9-17 * * 1-5 A cada 15 min, 9–17h, seg–sex Polling em horário comercial
0 0 1 1 * 1º de janeiro à meia-noite Virada anual

Suporte por Plataforma

Formato de 5 campos (Unix / Kubernetes / GitHub Actions / GitLab CI)

Todas essas plataformas usam a sintaxe cron Unix padrão de 5 campos. As principais diferenças são:

  • Linux crontab — executa no fuso horário local do servidor; edite com crontab -e
  • Kubernetes — executa em UTC por padrão; intervalo mínimo de 1 minuto
  • GitHub Actions — executa em UTC; intervalo mínimo de 5 minutos; pode atrasar até 15 minutos em picos de carga
  • GitLab CI — executa em UTC; intervalo mínimo de 1 hora para shared runners

Formato Quartz/Spring de 6 campos

O Quartz Scheduler (usado em Java, Spring Boot e Jenkins) adiciona um campo de segundos no início:

┌─────────── segundo      (0–59)
│ ┌───────── minuto       (0–59)
│ │ ┌─────── hora         (0–23)
│ │ │ ┌───── dia do mês   (1–31)
│ │ │ │ ┌─── mês          (1–12)
│ │ │ │ │ ┌─ dia da semana (1–7 no Quartz, ou DOM–SAB)
│ │ │ │ │ │
* * * * * *

O Quartz também suporta ? (sem valor específico), L (último dia), W (dia útil mais próximo) e # (enésimo dia da semana do mês).

Formato AWS EventBridge de 6 campos

O AWS EventBridge usa 6 campos com um campo de ano no final: min hora dom mês dow ano. Você deve usar ? para dia-do-mês ou dia-da-semana (nunca especifique os dois). Todos os horários são em UTC.

Perguntas Frequentes

O que é uma expressão cron?

Uma expressão cron (cron expression) é uma string de cinco (ou seis) campos separados por espaços que define um schedule recorrente para tarefas automatizadas. É usada em arquivos crontab Unix/Linux, pipelines CI/CD, agendadores na nuvem e bibliotecas de scheduling para especificar quando um job deve ser executado — por exemplo, a cada 5 minutos, todo dia à meia-noite ou todo dia útil às 9h.

O que significa */5 em uma expressão cron?

O caractere / indica um passo. */5 no campo de minuto significa "a cada 5 minutos" — nos minutos 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50 e 55. Da mesma forma, */2 no campo de hora executa a cada 2 horas, e 1-30/2 no campo de minuto executa nos minutos 1, 3, 5, 7... até o 29.

Qual é a diferença entre cron de 5 e 6 campos?

O cron Unix/Linux padrão usa 5 campos (de minuto a dia da semana). O Quartz Scheduler — usado em Java, Spring Boot e Jenkins — adiciona um campo de segundos no início, totalizando 6 campos. O AWS EventBridge também usa 6 campos, mas adiciona um campo de ano no final. Sempre verifique qual formato sua plataforma exige, pois uma expressão de 5 campos é inválida no Quartz e vice-versa.

Como escrever uma cron expression para "todo dia útil às 9h"?

0 9 * * 1-5 — minuto 0, hora 9, qualquer dia do mês, qualquer mês, segunda a sexta-feira (1–5). No formato Quartz, adicione um campo de segundos no início: 0 0 9 * * MON-FRI.

O que significam os caracteres especiais do Quartz ?, L, W e #?

São extensões exclusivas do Quartz, indisponíveis no cron Unix padrão. ? significa "sem valor específico" — necessário quando você especifica dia-do-mês ou dia-da-semana, mas não os dois. L significa "último" (último dia do mês, ou última sexta-feira). W seleciona o dia útil mais próximo a um determinado dia do mês. # aponta o enésimo dia da semana do mês — 2#1 é a primeira segunda-feira, 5#3 a terceira quinta-feira.

Como o cron lida com fusos horários?

O cron Unix padrão executa no fuso horário local do servidor. Se você mudar o fuso do servidor ou implantar em múltiplas regiões, os horários agendados mudam inesperadamente. Boa prática: escreva todos os schedules cron em UTC e documente esse pressuposto. Kubernetes CronJobs e schedules do GitHub Actions rodam em UTC por padrão. O AWS EventBridge sempre usa UTC.

O que significa 0 0 * * * em linguagem simples?

Significa "todo dia à meia-noite (00:00)." Campo a campo: minuto=0, hora=0, qualquer dia do mês, qualquer mês, qualquer dia da semana. É equivalente ao atalho @daily.

Esta ferramenta é uma alternativa ao crontab.guru?

Sim. Este gerador de expressão cron vai além do que o crontab.guru oferece: mostra as próximas 5 execuções com fuso horário local, suporta sintaxe Quartz/Spring de 6 campos, inclui editor visual de campos, gera a linha de crontab completa com o comando/script, fornece dicas de integração específicas por plataforma para Kubernetes, GitHub Actions, AWS EventBridge, Node.js, Python, PHP e Docker, e está disponível em português, inglês, espanhol, alemão, francês e italiano.

Recursos

Ferramentas Relacionadas