Qual é a sintaxe correta para executar o cron a cada 4 horas?

Qual é a sintaxe correta para executar o cron a cada 4 horas?

Eu tenho a seguinte sintaxe (que acho correta?), Mas ela executa o comando a cada minuto!

* */4 * * * /cmd.sh

Responder1

0 0,4,8,12,16,20 * * * /cmd.sh

Provavelmente é assim que eu faria. Isso executará o trabalho a cada 4 horas, nos horários 00:00, 04:00, 08:00, 12:00, 16:00, 20:00.

Esta é apenas uma maneira um pouco mais detalhada de escrever */4, mas deve funcionar da mesma forma.

Responder2

A postagem original, antes da edição, mostrava a configuração como:

  • */4 * * * /cmd.sh

O autor da postagem não conhecia Markdown e colocou um asterisco na primeira coluna, fazendo com que aparecesse como um marcador. Editei a postagem deles para refletir o que eles pretendiam postar:

* */4 * * * /cmd.sh

Nessa configuração, o autor da postagem obteria o comportamento observado: o trabalho será executado uma vez por minuto durante horas que são divisíveis por 4.

Para evitar correr uma vez por minuto é necessário um número na primeira coluna, como este:

15 * * * * whatever...

Isso será executado no 15º minuto após cada hora.

Juntando tudo isso: para executar uma vez por hora durante horas que são divisíveis por 4, use esta sintaxe:

15 */4 * * * whatever...

Responder3

Faça um crontab -e e adicione a seguinte entrada

0 */4 * * * caminho_para_o_script

Este será o script a cada 4 horas.

Responder4

O problema é o * na primeira coluna

' * */2 * * * /caminho para o script '

isso se traduz em execução a cada minuto da hora, mas faça isso apenas a cada 2 horas

informação relacionada