Conversor Gratuito

Gerador de Expressões Cron

Gere, explique e valide expressões cron instantaneamente no seu navegador. Construtor visual e analisador de expressões — gratuito, privado e do lado do cliente.

Expressão Cron
0 */6 * * *
Descrição legível
Every minute
Próximas 5 execuções
Calculating...

Sobre esta ferramenta

As expressões cron são cinco (ou seis, dependendo do sistema) campos separados por espaços que descrevem uma programação: minuto, hora, dia do mês, mês e dia da semana. Cada campo aceita valores numéricos, intervalos, listas, incrementos e curingas. Cron tem sido o formato de agendamento de fato do Unix desde o final da década de 1970 e agora é usado muito além do Unix — por Kubernetes CronJobs, GitHub Actions, regras do AWS EventBridge, trabalhos Jenkins e quase todos os outros sistemas de agendamento em produção.

Ler e escrever expressões cron manualmente é propenso a erros. Os campos são posicionais, a interação do dia do mês e do dia da semana não é óbvia (um valor em qualquer um dos campos aciona o trabalho, não em ambos) e os erros produzem silenciosamente programações que parecem corretas, mas são acionadas em horários errados. Um gerador que traduz programações em inglês simples em sintaxe cron correta evita esses erros.

Esta ferramenta oferece duas direções: construir uma expressão cron a partir de um formulário amigável (toda segunda-feira às 9h, a cada 5 minutos durante o horário comercial) e explicar uma expressão cron existente em termos humanos. Ambos são executados no seu navegador sem qualquer interação com o servidor.

Por que usar um gerador Cron

A sintaxe do Cron é densa e implacável. Erros comuns incluem numeração confusa dos dias da semana (domingo é 0 ou 7 dependendo do sistema), esquecer que o dia do mês e o dia da semana usam a semântica OR e entender mal a sintaxe de incremento (*/5 significa cada 5 começando em 0). Um gerador captura isso por construção – as expressões produzidas correspondem ao que você descreveu no formulário.

Ler expressões existentes é igualmente difícil. Uma programação como 0 9 * * 1-5 é lida como todos os dias da semana às 9h, uma vez que você conhece a sintaxe, mas qualquer pessoa não familiarizada com o cron deve procurar cada campo. Explicar a expressão em termos humanos é mais rápido do que aprender a sintaxe de interações pontuais.

Como usar

Escolha um padrão de agendamento e obtenha a expressão cron.

  1. Escolha o modo de geração: Crie uma expressão cron a partir de entradas de formulário (frequência, hora, dias) ou explique uma expressão existente em termos humanos.
  2. Configurar o agendamento: Escolha a frequência (a cada minuto, a cada hora, todos os dias, todas as semanas, todos os meses, personalizado). Especifique horários, dias e intervalos conforme necessário. O formulário restringe as entradas a combinações válidas.
  3. Gerar ou explicar: A geração produz sintaxe cron padrão (5 campos). A explicação divide cada campo e fornece um resumo legível.
  4. Use em seu agendador: Cole a expressão gerada na especificação CronJob do Kubernetes, na programação do GitHub Actions, no AWS EventBridge ou no agendador da sua plataforma.

Casos de uso comuns

Detalhes técnicos

O cron padrão tem cinco campos: minuto (0–59), hora (0–23), dia do mês (1–31), mês (1–12), dia da semana (0–6 ou 0–7, ambos domingos). Cada campo aceita um único valor, lista separada por vírgula, intervalo com hífen, incremento com / ou curinga com *.

Dia do mês e dia da semana usam semântica OR: se qualquer um deles estiver definido como um valor não curinga, a tarefa será executada quando qualquer um deles corresponder. Isso é contra-intuitivo, mas corresponde ao comportamento do cron POSIX. Definir ambos os campos produz um cronograma mais amplo, e não mais restrito.

As extensões variam de acordo com a implementação. Alguns aceitam um sexto campo para segundos (Quartzo, Primavera); alguns aceitam? como alternativa curinga; alguns incluem atalhos @yearly, @monthly, @daily. O gerador produz cron padrão de 5 campos adequado para a maioria dos sistemas.

Melhores Práticas

Perguntas frequentes

Qual é o formato da expressão cron?
O cron padrão usa 5 campos: minuto (0-59), hora (0-23), dia do mês (1-31), mês (1-12), dia da semana (0-7, onde 0 e 7 são domingo). Caracteres especiais: * (qualquer), , (lista), - (intervalo), / (etapa).
Como faço para definir um trabalho para ser executado a cada 5 minutos?
Use */5 no campo de minutos: '*/5 * * * *'. O /5 significa 'cada 5º valor'. Da mesma forma, */15 = a cada 15 minutos, */2 = a cada 2 minutos.
Qual fuso horário o cron usa?
Cron normalmente usa o fuso horário do sistema. Em servidores Linux, geralmente é UTC, a menos que seja configurado de outra forma. Os serviços em nuvem (AWS, GCP) geralmente são padronizados como UTC. Sempre verifique a configuração de fuso horário do seu sistema.
Este é o mesmo formato usado pelo GitHub Actions?
GitHub Actions usa o mesmo formato de 5 campos, mas é executado no fuso horário UTC. AWS CloudWatch e Kubernetes CronJobs também usam esse formato. Alguns sistemas como o Quartz usam um formato estendido de 6 a 7 campos com segundos.
Qual é a diferença entre 0 no dia da semana e 7?
Ambos significam domingo. O cron POSIX aceita 0–6 ou 0–7. Use o que sua implementação específica do cron preferir; a maioria aceita ambos.
O explicador é preciso para cron não padrão?
Ele tem como alvo o cron padrão de 5 campos. Extensões Quartz (com segundos), variantes do AWS EventBridge e outros dialetos podem não ser analisados ​​corretamente. Confirme com a documentação do sistema de destino.
Minha expressão é enviada para um servidor?
Não. A geração e a explicação acontecem no seu navegador.
E os atalhos @anual e @mensal?
Implementações comuns do cron suportam @yearly, @monthly, @weekly, @daily, @hourly e @reboot como atalhos para programações comuns. O gerador produz expressões padrão de 5 campos; você pode substituir manualmente os atalhos se o seu agendador os aceitar.