Como agendar um script Python para execução em uma VM Linux?

Como agendar um script Python para execução em uma VM Linux?

Tentei usar o crontab mas não funcionou. Além disso, preciso de um nohup para mantê-lo funcionando após sair da conexão SSH?

02 19 * * * /usr/bin python3.7 myScript.py

Responder1

Você tem alguns erros de sintaxe aí. Primeiro, se você quiser rodar myScript.pycom python3.7which is in /usr/bin, então você precisa:

/usr/bin/python3.7 myScript.py

Em seguida, você precisa fornecer o caminho completo para o script. Portanto, se o script estiver em seu diretório inicial, use (mude /home/marcelo/para seu diretório inicial real):

02 19 * * * /usr/bin/python3.7 /home/marcelo/myScript.py

E não, você não precisa nohupnem de nada mais. Isso não estará conectado à sua sessão ssh de forma alguma.

Finalmente, é mais comum usar shebangs para esse tipo de coisa. Basta adicionar esta linha como a primeira linha do seu script:

#!/usr/bin/python3.7

Em seguida, torne-o executável ( chmod +x /home/marcelo/myScript.py) e você poderá executar seu script diretamente:

02 19 * * * /home/marcelo/myScript.py

informação relacionada