on dirait que vous essayez de changer de répertoire crontab, tout comme omu_negru dit que vous aurez besoin d'utiliser pleinement chemin à la place. C'est parce que crontab, même s'il fonctionne sous votre nom, n'héritera pas de vos variables d'environnement telles que $ PATH.
Essayez ceci. Tout d'abord, allez dans le répertoire où se trouve votre script ... et mettez votre main.py dans un fichier exécutable afin de ne plus avoir à appeler python main.py. La façon la plus simple de le faire est ...
$ chmod u+x main.py
Maintenant, si vous faites ls -l vous verrez que vous avez « x » dans la section utilisateur des autorisations qui vous permettront d'exécuter directement.
-rwxr--r-- 1 user user 0 Aug 17 17:55 main.py
Maintenant, vous êtes prêt à simplifier la syntaxe crontab à quelque chose comme ça ...
34 15 * * * /foo/bar/welcomeclient-0.0.5/main.py
J'aime aussi capturer la sortie du script dans un fichier journal de sorte qu'il est plus facile de dépanner quand les choses ne fonctionnent pas comme prévu notre, comme suit:
34 15 * * * /foo/bar/welcomeclient-0.0.5/main.py & >> /foo/bar/main.log
Le journal doit être ajouté à rotation des journaux, sinon il continuera à remplir et, éventuellement, rendre votre système manque d'espace, mais qui est un autre t opic déjà adressé sur ce site.
le répertoire welcome-client se trouve réellement dans le répertoire racine ... –
Est-ce que cela fait une différence sur la façon dont je devrais le référencer? –
Ce que je l'ai modifié à est la suivante: '50 20 * * * /usr/bin/python3.6 /root/welcomeclient-0.0.5/main.py && >> /root/welcomeclient-0.0.5/main .log' –