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