Cron - Verifique se ativado na inicialização

0

Eu tenho um script e arquivo de configuração.

  • O arquivo de configuração contém informações sobre se o script será executado ou não (ativado ou desativado).
  • Se ativado, o script deve ser executado em intervalos predeterminados.

Eu posso escrever um cron job para executar script em intervalos predefinidos e quando o script é executado, posso ler o arquivo de configuração e, se ele não estiver ativado, posso sair.

No entanto, estou procurando uma maneira mais conveniente de fazer isso. Existe alguma maneira de informar ao próprio cron que esse trabalho não está ativado no tempo de inicialização? Portanto, o cron não iniciará o trabalho se não estiver ativado (ou caso contrário). Ou é possível ativar / desativar o trabalho em tempo de execução?

Obrigado antecipadamente.

    
por benjamin button 27.06.2016 / 23:53

1 resposta

1

Ah, agora eu entendo! Essa é uma solicitação bastante comum:

Tudo o que você precisa é testar a existência de um determinado arquivo, não seu conteúdo. Por exemplo. Se você deseja executar o cron job, crie um arquivo no diretório inicial do yr: $ touch /home/you/cronjob_enable .

Em seguida, edite o usuário crontab:

$ crontab -e
*/5 * * * *  /bin/bash -c 'test -e /home/you/cronjob_enable && /home/linux/test.sh'

É isso. Enquanto o arquivo estiver lá (vazio ou não, é irrelevante) e você tiver permissão para executar /home/linux/test.sh , o script test.sh será executado.
Quando você apagar o arquivo /home/you/cronjob_enable , o script test.sh não será executado.

    
por Cbhihe 29.06.2016 / 17:08