Sobre a execução de um programa python em um script de shell que está agendado no crontab

2

Eu tenho um problema com relação ao crontab. Eu tenho um script chamado checker.sh e quero programá-lo para que seja executado a cada minuto:

* * * * * sh /home/pi/checker.sh

Eu tenho o script aqui:

Oconceitodestescriptveiodaqui: Linux Script para verificar se o processo está sendo executado & agir sobre o resultado

O problema é: sempre que termino o processo python para verificar se checker.sh pode executar o script python, isso não funciona. Eu não sei onde está o problema. Tentei alterar o nome do caminho do python para / usr / bin / python no script checker.sh , mas mesmo assim ele não funciona.

Espero que alguém possa resolver isso.

    
por frianne12 15.06.2015 / 21:54

4 respostas

0

Use um caminho totalmente qualificado em crontab, por exemplo.

/bin/sh /home/pi/checker.sh
    
por 16.06.2015 / 03:21
0

Você especificou bash no shell script e então tentou chamar seu script com sh no crontab. Realmente não há necessidade de especificar o shell no crontab desde que você o especifique no shebang, então isso deve funcionar bem:

* * * * * /home/pi/checker.sh
    
por 16.06.2015 / 18:41
0

Tente navegar explicitamente para o diretório dentro do próprio script de shell usando cd e o caminho completo. Eu tive um problema semelhante e consertei isso. Por exemplo, na parte superior do seu script, depois de #!/bin/bash , você colocaria:

cd /home/pi/Some_Directory'
# the rest of your script
    
por 02.07.2016 / 08:00
0

Esta parece ser uma questão relativamente antiga, mas acredito que o problema esteja no cabeçalho ( Shebang ). Seu script tem o seguinte cabeçalho:

#! /bin/bash

No entanto, deve ser:

#!/bin/bash 

Ou seja, sem espaços entre #! e /bin/bash . Isso aconteceu comigo antes e remover o espaço resolvido. Espero que ainda ajude alguém.

    
por 09.06.2017 / 01:38