Sei que estão confusos. Também fiquei!
O cron é uma ferramenta essencial para agendar tarefas no Linux, mas sua sintaxe pode causar confusão, especialmente ao definir intervalos de tempo. Compreender como usar valores e operadores corretamente é crucial para configurar suas tarefas de forma eficiente.
Vamos detalhar como funcionam os campos do cron, usando números e intervalos, para que você entenda as diferenças e evite erros comuns.
A sintaxe do cron é composta por cinco campos, cada um representando uma unidade de tempo:
* * * * * comando
| | | | |
| | | | +---- Dia da semana (0 - 7) (0 ou 7 para domingo)
| | | +------ Mês (1 - 12)
| | +-------- Dia do mês (1 - 31)
| +---------- Hora (0 - 23)
+------------ Minuto (0 - 59)
Cada campo pode ser preenchido com valores específicos ou operadores para definir com precisão quando o cron deve executar a tarefa.
Usando Números no Cron:
- Minuto 30: Esse cron agendará a tarefa para ser executada no minuto 30 de cada hora.
- Exemplo de execução: 00:30, 01:30, 02:30, 03:30, etc.
- Minuto 15, hora 9: Esse cron executa a tarefa às 9:15 da manhã, todos os dias.
- Exemplo de execução: 09:15, 09:15, 09:15, etc.
- Minuto 0, hora 5, dia 1: Executa a tarefa à 5:00 no primeiro dia de cada mês.
- Exemplo de execução: 01/01 05:00, 01/02 05:00, 01/03 05:00, etc.
Usando Operadores no Cron
O cron permite o uso de operadores como *
, */
, ,
, -
e até mesmo L
e W
em alguns casos.
Aqui estão algumas maneiras de usá-los com qualquer número:
- A cada 5 minutos: O operador
*/5
significa que a tarefa será executada a cada 5 minutos. - Exemplo de execução: 00:05, 00:10, 00:15, 00:20, etc.
- A cada hora entre meia-noite e 6 da manhã: O intervalo
0-6
no campo de horas significa que a tarefa será executada de hora em hora, entre as 00:00 e as 06:00. - Exemplo de execução: 00:00, 01:00, 02:00, 03:00, 04:00, 05:00, 06:00.
- Às 9:00 e 15:00 todos os dias: Usando
,
, você pode agendar a tarefa para ser executada em vários horários. Neste exemplo, a tarefa será executada às 9:00 e às 15:00 todos os dias. - Exemplo de execução: 09:00, 15:00.
- À meia-noite, nos primeiros 7 dias de cada mês: O
1-7
indica que a tarefa será executada no início de cada mês, de 1 a 7 de cada mês, à meia-noite. - Exemplo de execução: 01/01 00:00, 02/01 00:00, 03/01 00:00, etc.
O*
(asterisco) em qualquer campo do cron representa qualquer valor possível para esse campo.
Por exemplo: * * * * * comando
: Executa a tarefa a cada minuto, todos os dias, de todas as horas, em qualquer dia do mês e em qualquer mês.*/10 * * * * comando
: Executa a tarefa a cada 10 minutos.
Algumas versões do cron oferecem mais flexibilidade com os sufixos L
(último) e W
(dia útil). Veja como usá-los:
0 0 1W * * comando
: Executa a tarefa no primeiro dia útil de cada mês.L 5 * * * comando
: Executa a tarefa no último dia útil de cada mês (em versões do cron que suportam o sufixoL
).
Compreender a sintaxe do cron e como usar números e operadores corretamente é essencial para garantir que suas tarefas sejam executadas no momento certo. Se você usar um número específico (como 15
ou 30
), estará agendando a tarefa para um momento exato. Usar intervalos como */5
ou 0-6
permite agendar a execução com mais flexibilidade.
O importante é entender o significado de cada campo e operador para evitar agendamentos indesejados.
Ficamos um pouco menos confusos e sem surpresas por enquanto.
Na duvida é sempre bom perguntar.
Vamos em frente.
Até...