Cron indlæser åbenbart ikke bash-profilen, så du skal skrive en indpakning.
Så skriv en bash-indpakning, der eksporterer de nødvendige variabler og kalder scriptet. Kald derefter den indpakning fra crontab. Når det virker, vil du vide, at dine variabler ikke blev eksporteret korrekt for den bruger, hvis crontab du redigerede.
Bemærk:Du kan tilføje dem til /etc/bashrc
og det vil så være på plads for alle brugere, hvis du har root-adgang.
Du kan også lave en generisk indpakning og cron ting sende dem gennem indpakningen.
my_bash_wrapper.sh
#!/bin/bash
. ~/.bash_profile
"$0"
fremkalde i cron:
0 1 * * * /my/loc/my_bash_wrapper.sh my_python_script arg1 arg2