Resposta rápida
Digite uma expressão cron como 30 9 * * 1-5 e a ferramenta a explica — «Às 09:30, de segunda a sexta.» — e lista as próximas 5 vezes em que ela vai executar no seu horário local. Para criar uma, escolha um agendamento como «Todo dia às…» ou «A cada N minutos», clique em «Usar este agendamento» e copie a expressão para o seu crontab.
O que é um Gerador de expressões cron?
Um Gerador de expressões cron (क्रॉन एक्सप्रेशन जनरेटर) ajuda a escrever e entender agendamentos cron. O cron é o agendador de tarefas baseado em tempo embutido no Linux, macOS e outros sistemas do tipo Unix, e sua sintaxe de cinco campos também é usada por muitos painéis de hospedagem, pipelines de CI, CronJobs do Kubernetes e agendadores de nuvem. A sintaxe é compacta, mas fácil de errar — 0 9 * * 1 é segunda ou domingo? */10 vai no primeiro ou no segundo campo? Um campo errado pode fazer um backup rodar a cada minuto ou nunca.
Esta ferramenta grátis resolve isso de três formas. Digite qualquer expressão e ela é explicada em linguagem simples. Ela lista os próximos 5 horários de execução no seu horário local, para você confirmar o agendamento antes de publicar. E um construtor cria agendamentos comuns — a cada N minutos, diário, dias úteis, semanal, mensal ou anual — a partir de escolhas simples. Os erros são explicados com clareza, incluindo o engano comum de colar uma expressão Quartz de seis campos no crontab.
Principais recursos
- Explicação em linguagem simples enquanto você digita.
- Próximos 5 horários de execução no fuso horário do seu navegador.
- Construtor de agendamentos para oito padrões comuns.
- Sintaxe padrão completa —
*, listas, intervalos, passos e intervalos com passos. - Nomes como JAN–DEC e SUN–SAT, e 7 como domingo.
- Macros — @yearly, @annually, @monthly, @weekly, @daily, @midnight, @hourly.
- Erros úteis para número de campos errado e valores fora da faixa.
- Folha de referência embutida.
Como usar — passo a passo
- Para entender um agendamento, cole a expressão na caixa de cima. A explicação e as próximas execuções se atualizam na hora.
- Para montar um agendamento, escolha um padrão em «Executar» e depois defina a hora, N, minuto, dia da semana, dia ou mês mostrados para esse padrão.
- Clique em «Usar este agendamento» para colocá-lo na caixa de cima e conferir a explicação.
- Clique em «Copiar expressão» e cole no seu crontab, painel de hospedagem ou agendador.
Os cinco campos do cron
| Posição | Campo | Valores permitidos |
|---|---|---|
| 1 | Minuto | 0–59 |
| 2 | Hora | 0–23 (relógio de 24 horas) |
| 3 | Dia do mês | 1–31 |
| 4 | Mês | 1–12 ou JAN–DEC |
| 5 | Dia da semana | 0–7 (0 e 7 são domingo) ou SUN–SAT |
Caracteres especiais: * significa todo valor; , separa uma lista (8,20); - define um intervalo (1-5); / define um passo (*/15 ou 9-17/2). Os nomes não diferenciam maiúsculas.
Expressões cron comuns
| Expressão | Significado |
|---|---|
* * * * * | A cada minuto |
*/5 * * * * | A cada 5 minutos |
*/15 * * * * | A cada 15 minutos |
0 * * * * | No minuto 0 de toda hora |
0 */6 * * * | A cada 6 horas (00:00, 06:00, 12:00, 18:00) |
0 0 * * * | Todo dia à meia-noite |
0 8,20 * * * | Todo dia às 08:00 e às 20:00 |
30 9 * * 1-5 | Às 09:30, de segunda a sexta |
*/5 9-17 * * 1-5 | A cada 5 minutos entre 09:00 e 17:00 nos dias úteis |
0 2 * * 0 | Às 02:00 todo domingo |
0 0 1 * * | À meia-noite do dia 1 de todo mês |
0 0 1 */3 * | Trimestral — 1 de janeiro, abril, julho e outubro |
0 0 1 1 * | Uma vez por ano, à meia-noite de 1 de janeiro |
A regra do dia do mês e do dia da semana
Essa regra surpreende muita gente. Quando ambos os campos de dia do mês e de dia da semana são restritos (nenhum é *), o cron Vixie padrão — a versão da maioria dos sistemas Linux — executa a tarefa nos dias que correspondem a qualquer um dos campos, não aos dois. Assim, 0 9 15 * 5 significa «às 09:00 do dia 15 do mês ou em qualquer sexta», e a ferramenta explica exatamente assim. Se você só quer a sexta dia 15, agende 0 9 15 * * e verifique o dia da semana dentro do seu script. Quando só um campo de dia é restrito, só esse campo importa.
Fusos horários e cron
O cron usa o fuso horário da máquina em que roda. Muitos servidores de nuvem e contêineres rodam em UTC, enquanto a Índia usa IST (UTC+5:30). Uma tarefa escrita como 0 9 * * * em um servidor UTC executa às 14:30 IST. A lista de próximas execuções desta ferramenta usa o horário local do seu navegador, o que é perfeito para conferir o padrão; se o fuso do seu servidor for diferente, ajuste a hora de acordo. Para executar às 09:00 IST em um servidor UTC, use 30 3 * * *. Alguns sistemas permitem definir CRON_TZ ou um fuso horário nas configurações do agendador.
Usando o cron no Linux
crontab -e— edite suas tarefas cron.crontab -l— liste suas tarefas cron.- Cada linha são os cinco campos seguidos do comando:
0 2 * * 0 /home/user/backup.sh. - Use caminhos completos para scripts e programas; o cron roda com um ambiente e um PATH mínimos.
- Redirecione a saída para um log para pegar erros:
… /home/user/backup.sh >> /home/user/backup.log 2>&1. - As linhas que começam com
#são comentários.
Exemplo resolvido: um backup noturno do banco de dados
Suponha que seu site rode em um servidor de nuvem configurado em UTC e você queira um backup toda noite às 2:00 da manhã no horário da Índia, quando o tráfego é menor. 2:00 IST são 20:30 UTC do dia anterior, então a expressão é 30 20 * * *. Cole-a na ferramenta: a explicação diz «Às 20:30.» e, se o seu computador estiver em IST, a lista de próximas execuções mostra horários como 20:30 — lembre-se de que essa lista está no seu horário local, então converta mentalmente para o fuso do servidor. Adicione a linha 30 20 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1 com crontab -e e confira o log na manhã seguinte para confirmar que rodou. Para uma limpeza semanal aos domingos, monte «Toda semana em…» domingo às 02:00 para obter 0 2 * * 0.
Variantes do cron: Quartz, Spring e agendadores de nuvem
Nem todo agendador usa o cron clássico de cinco campos. O Quartz (Java) e o Spring acrescentam um campo de segundos no início, e o Quartz permite um ano opcional no fim, além de caracteres especiais como ?, L (último), W (dia útil) e # (n-ésimo dia da semana). Alguns agendadores de nuvem usam formatos próprios de seis campos. Esta ferramenta segue a sintaxe padrão de cinco campos usada pelo crontab do Linux, pelos agendamentos do GitHub Actions e pelos CronJobs do Kubernetes; quando vê seis campos, ela avisa em vez de adivinhar. O GitHub Actions sempre executa os agendamentos em UTC.
Quem usa o cron?
- Desenvolvedores que agendam backups, relatórios, e-mails e scripts de limpeza.
- Administradores de sistemas que automatizam a manutenção de servidores.
- Engenheiros de DevOps que escrevem CronJobs do Kubernetes e agendamentos de CI.
- Donos de WordPress e de sites que configuram um cron de verdade em vez de gatilhos ao carregar páginas.
- Estudantes que aprendem Linux.
Erros comuns a evitar
- Trocar minuto e hora —
9 30 * * *é inválido (hora 30); 09:30 é30 9 * * *. - Usar * no campo de minutos por engano —
* 9 * * *executa 60 vezes entre 09:00 e 09:59. - Esquecer o fuso horário — o servidor pode não usar IST.
- Datas impossíveis —
0 0 30 2 *(30 de fevereiro) nunca executa; a ferramenta avisa quando nenhuma execução é encontrada. - Caminhos relativos — o cron não começa na pasta do seu projeto.
- Execuções sobrepostas — se uma tarefa demora mais que o intervalo, use um bloqueio (por exemplo,
flock).
Glossário rápido
- Cron: o agendador de tarefas do Unix.
- Crontab: a tabela (arquivo) de tarefas agendadas.
- Tarefa cron: um comando agendado.
- Passo: a parte /n que pula valores.
- Macro: um atalho como @daily.
- UTC: Tempo Universal Coordenado, o fuso padrão de muitos servidores.
Por que usar este Gerador de cron?
Ele explica, monta e visualiza agendamentos cron num só lugar, segue as regras do cron Vixie padrão e pega erros antes que cheguem ao seu servidor — grátis e privado.
Gerador de expressões cron — Informações principais
| Formato | minuto hora dia-do-mês mês dia-da-semana (5 campos) |
|---|---|
| Faixas | minuto 0–59, hora 0–23, dia 1–31, mês 1–12, dia da semana 0–7 |
| Domingo | 0 ou 7 no campo do dia da semana |
| A cada 15 minutos | */15 * * * * |
| Dias úteis às 9:30 | 30 9 * * 1-5 |
| Próximas execuções | Mostradas no fuso horário local do seu navegador |
Perguntas frequentes
O que é uma expressão cron?
Uma expressão cron é um agendamento curto formado por cinco campos — minuto, hora, dia do mês, mês e dia da semana — que diz ao cron (o agendador de tarefas do Unix/Linux) quando executar um comando. Por exemplo, 0 2 * * 0 significa 02:00 todo domingo.
Como executo uma tarefa cron a cada 5 minutos?
Use */5 * * * *. O */5 no campo de minutos significa a cada 5 minutos (0, 5, 10 … 55) de toda hora, todo dia.
O que significa * no cron?
Um asterisco significa «todo valor» daquele campo. * * * * * executa a cada minuto; 0 * * * * executa no minuto 0 de toda hora.
Como agendo uma tarefa só em dias úteis?
Coloque 1-5 no campo do dia da semana. 30 9 * * 1-5 executa às 09:30 de segunda a sexta.
O domingo é 0 ou 7 no cron?
Os dois. O cron padrão aceita 0 e 7 para domingo no campo do dia da semana. A segunda é 1 e o sábado é 6. Você também pode escrever nomes como SUN, MON ou FRI.
O que acontece quando defino o dia do mês e o dia da semana?
No cron padrão (Vixie), se os dois campos são restritos, a tarefa executa quando qualquer um coincide. 0 9 15 * 5 executa às 09:00 no dia 15 de todo mês e também em toda sexta — não só nas sextas que caem no dia 15.
Por que minha expressão de 6 campos mostra um erro?
Seis campos geralmente significam que segundos ou um ano estão incluídos, como no Quartz (Java), no Spring ou em alguns agendadores de nuvem. O crontab do Linux usa cinco campos. Remova o campo extra ou use a documentação da própria plataforma.
Qual fuso horário o cron usa?
O cron roda no fuso horário do servidor (muitas vezes UTC em servidores de nuvem). Esta ferramenta mostra as próximas execuções no horário local do seu navegador, então, se o seu servidor usa UTC, converta de acordo — 09:00 UTC são 14:30 IST.
O que são @daily e @hourly?
São atalhos: @hourly = 0 * * * *, @daily ou @midnight = 0 0 * * *, @weekly = 0 0 * * 0, @monthly = 0 0 1 * * e @yearly ou @annually = 0 0 1 1 *. @reboot executa uma vez na inicialização e não tem agendamento.
Como executo uma tarefa no último dia do mês?
O cron padrão não tem um símbolo de «último dia» (o L existe só em agendadores no estilo Quartz). Um truque comum é executar todo dia nos dias 28–31 e verificar no script se amanhã é dia 1.
Como edito meu crontab no Linux?
Execute crontab -e para editar e crontab -l para listar suas tarefas. Cada linha é uma expressão cron seguida do comando, por exemplo 0 2 * * 0 /home/user/backup.sh.
O Gerador de expressões cron é grátis?
Sim. É grátis, não exige cadastro e roda inteiramente no seu navegador.
Nunca mais adivinhe um agendamento cron!
Explique, monte e visualize expressões cron — grátis e instantâneo.
Conheça mais ferramentas da Prompt Minds
O Gerador de expressões cron funciona muito bem junto com nossas outras ferramentas grátis. Todas as ferramentas do Prompt Minds rodam inteiramente no seu navegador — sem cadastro, sem uploads, sem marca d’água. Ver todas as ferramentas grátis.
