O que é uma expressão cron?
Publicado a 28/07/2025 · 3 min de leitura · Ferramentas para programadores
Daniel Okonkwo — Programador front-end e redator de Tecnologia na OneKitly
Desempenho web · Formatos de ficheiro
Verificado a partir de 2 fontes
Uma expressão cron é uma cadeia curta que agenda uma tarefa para correr automaticamente a horas definidas, usada pela ferramenta cron do Unix e muitas apps. Tem cinco campos — minuto, hora, dia do mês, mês, dia da semana — por isso '0 9 * * 1' significa 9:00 toda a segunda-feira. Um asterisco significa 'cada'. É assim que os servidores executam cópias, relatórios e limpezas conforme um calendário.
Uma expressão cron agenda uma tarefa para correr automaticamente a horas definidas. Eis para que serve, os seus cinco campos, como lê-la, e os erros comuns.
Para que serve o cron
O cron é o agendador clássico dos sistemas Unix e Linux, e a mesma ideia aparece agora em serviços na nuvem e frameworks de apps em todo o lado. A sua função é executar uma tarefa automaticamente a horas recorrentes sem ninguém carregar num botão — cópias noturnas da base de dados, um relatório enviado toda a segunda, ficheiros temporários limpos a cada hora. Em vez de se lembrar destas tarefas, descreve quando devem acontecer numa expressão cron, e o agendador trata do resto.
Os cinco campos
Uma expressão cron padrão são cinco valores separados por espaços, numa ordem fixa: minuto (0–59), hora (0–23), dia do mês (1–31), mês (1–12) e dia da semana (0–6, onde 0 é domingo). Cada campo diz quando, dentro do seu intervalo, a tarefa deve disparar. Lendo da esquerda para a direita, vai da menor unidade de tempo à maior e depois ao dia da semana — sabendo a ordem, qualquer expressão se torna legível.
Ler uma expressão
Para além dos números, alguns símbolos fazem o trabalho pesado. Um asterisco significa 'cada' valor desse campo. Um número significa exatamente esse valor. Uma barra define um passo, por isso */15 no campo minuto significa 'a cada 15 minutos'. Uma vírgula lista vários valores, e um hífen dá um intervalo. Juntos, '0 9 * * 1' lê-se: minuto 0, hora 9, qualquer dia do mês, qualquer mês, à segunda — ou seja, 9:00 toda a segunda. Descodifique campo a campo e tudo encaixa.
Padrões comuns e armadilhas
Alguns padrões cobrem quase tudo: '*/15 * * * *' corre a cada 15 minutos, '0 0 * * *' todos os dias à meia-noite, '0 9 * * 1-5' às 9:00 em dias de semana. Duas coisas enganam. Quando os campos dia-do-mês e dia-da-semana estão ambos definidos, a maioria das implementações corre a tarefa se qualquer um coincidir, não ambos — uma surpresa frequente. E o cron usa o relógio do servidor, por isso verifique o fuso horário, ou uma tarefa de 'meia-noite' pode disparar à hora errada. Na dúvida, teste a expressão contra uma pré-visualização do calendário antes de confiar.
Perguntas frequentes
- O que é uma expressão cron?
- Uma cadeia de campos que diz a um agendador quando executar uma tarefa automaticamente.
- O que significa '0 9 * * 1'?
- Executar às 9:00 toda a segunda-feira.
- O que significa o asterisco no cron?
- 'Cada' — cada minuto, hora, dia, etc., para esse campo.
Artigos que podem interessar-lhe
Todos os guias →Ferramentas relacionadas
Fontes
Detetaste um erro neste artigo?