Analisador de expressões Cron
Analise as expressões do cron e veja uma explicação legível por humanos de quando elas são executadas. Perfeito para desenvolvedores e administradores de sistemas que precisam criar ou entender os agendamentos de tarefas cron. Evite erros de agendamento visualizando exatamente quando suas expressões do cron serão executadas.
Perguntas frequentes
Uma expressão cron é uma cadeia de 5 ou 6 campos que define uma programação para tarefas automatizadas em sistemas do tipo Unix. Os campos representam: minuto (0-59), hora (0-23), dia do mês (1-31), mês (1-12) e dia da semana (0-7, em que 0 e 7 são domingo). Por exemplo, '0 9 * * 1' significa 'executar às 9:00 AM toda segunda-feira'.
Comece com cinco asteriscos (* * * * * * *) que representam minuto, hora, dia, mês e dia da semana. Substitua os asteriscos por valores ou intervalos específicos. Por exemplo: '30 14 * * * *' é executado às 14h30 diariamente, '0 0 1 * * *' é executado à meia-noite do dia 1º de cada mês, '*/15 * * * * *' é executado a cada 15 minutos. Use nosso analisador para verificar se sua expressão faz o que você espera.
Um asterisco significa "todo" ou "qualquer" para aquela unidade de tempo. Por exemplo, * no campo de hora significa toda hora, * no campo de dia significa todo dia. Portanto, "0 * * * * *" significa "no minuto 0 de cada hora" (por hora), enquanto "* * * * * *" significa "a cada minuto". É o curinga que corresponde a todos os valores possíveis para esse campo.
Use a sintaxe do valor da etapa: */N. Para cada 5 minutos: '*/5 * * * *'. A cada 3 horas: '0 */3 * * *'. A sintaxe */N significa "a cada enésimo valor", portanto, */5 no campo de minutos significa minutos 0, 5, 10, 15, etc. Você também pode usar intervalos com etapas como "0-30/5" para cada 5 minutos durante a primeira meia hora.
Sim! Use 1-5 no campo do dia da semana (o quinto campo). Por exemplo, "0 9 * * 1-5" é executado às 9 horas de segunda a sexta-feira. Segunda-feira é 1 e sexta-feira é 5. Você também pode listar dias específicos: '0 9 * * 1,3,5' é executado às 9 horas somente na segunda-feira, quarta-feira e sexta-feira.
Essas são duas maneiras diferentes de especificar os dias em que um trabalho é executado. O dia do mês (3º campo) usa as datas de 1 a 31, enquanto o dia da semana (5º campo) usa de 0 a 7 (0 e 7 são domingos). Se ambos forem especificados (não *), o trabalho será executado quando QUALQUER condição corresponder. Por exemplo, "0 0 1 * 1" é executado à meia-noite do dia 1º de cada mês E toda segunda-feira.
Das 9h às 17h nos dias úteis: "0 9-17 * * 1-5" é executado no início de cada hora. A cada 30 minutos durante o horário comercial: '*/30 9-17 * * 1-5'. O intervalo de horas 9-17 abrange das 9h às 17h, e 1-5 limita a execução de segunda a sexta-feira.
Eles são equivalentes - ambos são executados diariamente à meia-noite. Muitas implementações do cron suportam strings especiais como @daily, @hourly, @weekly, @monthly e @yearly como atalhos. Esses atalhos são mais legíveis, mas menos flexíveis do que as expressões completas. Use atalhos para intervalos comuns e expressões completas para cronogramas personalizados.
As expressões padrão do cron são executadas com base no horário do sistema do servidor. Para lidar com fusos horários, defina o fuso horário do seu servidor corretamente ou calcule a diferença de horário. Algumas implementações avançadas do cron suportam especificações de fuso horário, mas o formato básico de 5 campos não inclui informações de fuso horário.
Use nosso analisador de expressões Cron para verificar se sua expressão mostra a descrição esperada do cronograma. O analisador explica em linguagem simples quando o trabalho será executado, ajudando você a detectar erros como "0 9 31 2 *" (31 de fevereiro não existe) antes de implementá-lo na produção.
