Crontab con raccolta output da terminale in python
Updated at: 04/09/2015
Immaginiamo di avere uno script in python che fra le altre cose esegua il comando os.popen("
comando shell") e ne voglia poi raccogliere l'output per processarlo in qualche modo...
Se tutto è fatto correttamente, da terminale funziona.
Nel momento in cui però andiamo a metterlo in un cron schedulato, potrebbe non funzionare, nel senso che quello che raccoglie il comando os.popen("
comando shell").read() è una stringa vuota.
Questo dipende dal fatto che cron non ha i percorsi corretti.
Per ovviare al problema è sufficiente aggiungere all'inizio del file crontab (crontab -e) la seguente riga:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin