J'essaie d'exécuter python Script avec crontab, mais mon crontab ne fonctionne rien.
J'ai essayé d'ajouter des emplois à crontab -e
, à Sudo crontab -e
à Sudo nano /etc/crontab
. Le script que j'essaie d'utiliser (le fichier est exécutable avec chmod +x
, la commande peut être exécutée dans le terminal):
2 * * * 1-5 python3 /home/foo/bar/update.py
Je l'ai enveloppé dans le script shell (le fichier est exécutable avec chmod +x
, la commande peut être exécutée dans le terminal):
#!/bin/sh
Sudo python3 /home/foo/bar/update.py
Et courir:
2 * * * 1-5 sh /home/foo/bar/run_update.sh
Et puis essayé juste de gérer des échantillons d'emplois:
* * * * * /bin/echo "cron works" >> /tmp/file
* * * * * env > /tmp/env.output
Rien ne fonctionne, aucun fichier n'est créé, pas de sortie dans les journaux, si j'essaie de conduire à vous connecter, rien ne se passe aussi. Je suis sûr que le service Cron est en cours d'exécution, mais j'ai complètement bloqué comment le faire travailler.
L'environnement d'exécution cron
est très différent de l'environnement d'exécution de l'interface graphique. Cours
env | sort; set
dans chaque environnement, enregistrez les résultats dans un fichier.
Si vous organisez votre ~/.bashrc
vous pouvez précisément préférer votre Python script avec
#!/bin/bash
. $HOME/.bashrc
yourPythonScript
pour configurer votre environnement cron
.
Lis man -a crontab;man -a cron
.