WMW

Gerador de Expressão Cron

Free

Crie e analise expressões cron com um editor de campos ao vivo, descrição em linguagem simples e as próximas 5 execuções reais. Suporta predefinições, atalhos @ e a variante opcional de 6 campos com segundos.

Funciona totalmente no seu navegador. As próximas execuções são calculadas usando o relógio e o fuso horário do seu próprio dispositivo.

Em Linguagem Simples

Próximas 5 Execuções

Baseado na data, hora e fuso horário atuais do seu dispositivo.

    Atividade recente

    Visível para todos. Últimos 20 usos de todos os visitantes, mais recentes primeiro.

    Ainda sem atividade. Seja o primeiro.

    Comentários (0)

    Achou esta ferramenta útil? Deixe um comentário, compartilhe uma dica ou nos diga como podemos melhorá-la.

    Comentários de convidados são revisados antes da publicação. Entrar para publicar instantaneamente.

    Ainda sem comentários. Seja o primeiro a compartilhar sua opinião!

    O que esta ferramenta faz

    Cron Expression Generator cria e explica agendamentos cron usados pelo cron do Unix/Linux, GitHub Actions, CronJobs do Kubernetes e agendadores semelhantes. Edite a expressão diretamente ou preencha os campos individuais de minuto/hora/dia, e veja instantaneamente uma descrição em linguagem simples, além das próximas 5 vezes que realmente seria executado.

    Como funciona

    Cada campo é analisado no conjunto exato de valores que corresponde: * se expande para o intervalo completo do campo, N-M se expande para cada valor de N a M, N-M/S (ou */S) mantém cada S-ésimo valor nesse intervalo, e itens separados por vírgula são combinados. Um dia é considerado uma correspondência quando sua data satisfaz o campo mês, e o campo dia-do-mês ou o campo dia-da-semana (ambos, se um dos dois for deixado como "*"; qualquer um dos dois, se ambos estiverem restritos -- a regra OU padrão do cron).

    Para encontrar as próximas execuções, a ferramenta parte da sua hora local atual e avança campo por campo -- direto para o próximo mês correspondente se o atual não se qualificar, direto para o próximo dia correspondente se o mês estiver certo mas o dia não, e assim por diante até o minuto (e o segundo, se ativado). Esse salto campo por campo é o que permite que até um agendamento raro como "apenas 29 de fevereiro" se resolva instantaneamente para o próximo ano bissexto, em vez de ter que verificar cada dia intermediário um por um.

    Problemas que resolve

    Perguntas frequentes

    ›O que significam os cinco campos em uma expressão cron?

    Da esquerda para a direita: minuto (0-59), hora (0-23), dia do mês (1-31), mês (1-12) e dia da semana (0-7, onde 0 e 7 significam ambos domingo). Um agendamento clássico estilo Quartz/Spring adiciona um sexto campo para segundos bem no início, que esta ferramenta suporta por meio da opção "Incluir campo de segundos".

    ›Por que "0 0 1,15 * 1" executa toda segunda-feira E no dia 1/15, em vez de apenas quando ambos coincidem?

    Essa é uma peculiaridade bem conhecida do cron, não um bug: quando tanto o campo dia-do-mês quanto o campo dia-da-semana estão restritos (não "*"), o cron padrão os trata como OU, não E -- a tarefa executa se qualquer uma das condições for verdadeira. Se você restringir apenas um dos dois campos e deixar o outro como "*", apenas o restrito se aplica.

    ›O que significa */15, e como é diferente de 0,15,30,45?

    Eles produzem exatamente o mesmo conjunto de valores aqui (0, 15, 30 e 45), mas */N é um passo: significa "cada N-ésimo valor a partir do mínimo do campo", o que é mais curto de escrever e se ajusta automaticamente se você mudar N. Uma lista explícita como 0,15,30,45 tem o mesmo significado, mas precisa ser digitada e editada manualmente.

    ›As "próximas execuções" são calculadas para o meu fuso horário?

    Sim -- usam o relógio e o fuso horário atuais do seu dispositivo, calculados inteiramente no seu navegador. Se a tarefa cron realmente for executar em um servidor em um fuso horário diferente (muito comum em servidores em nuvem configurados em UTC), os horários reais de execução serão deslocados pela diferença entre o seu fuso horário e o do servidor.

    ›O que são @daily, @hourly e os outros atalhos @?

    São aliases comuns suportados pelo cron, Vixie-cron e pela maioria dos agendadores modernos como atalho para uma expressão exata usada com frequência: @yearly e @annually significam ambos "0 0 1 1 *", @monthly significa "0 0 1 * *", @weekly significa "0 0 * * 0", @daily e @midnight significam "0 0 * * *", e @hourly significa "0 * * * *". Digite um diretamente no campo de expressão e ele se expande automaticamente.

    Ferramentas relacionadas