PDA

View Full Version : crontab e $PATH


Parny
21-02-2011, 21:08
Ciao a tutti

Con crontab -e ho impostato l'esecuzione di alcuni script scritti in python.
Ogni script ha come prima riga la classica:
#!/usr/bin/env python3

Il problema è che crontab non riesci a lanciare gli script, mi arriva sempre la mail che non è riuscito a trovare l'eseguibile di python3.
Però se lancio gli script a mano con un classico ./script.py funzionano senza problemi.

Come faccio a farli andare anche con il crontab?
Per caso crontab ha un path particolare che bisogna impostare da qualche parte?

sacarde
22-02-2011, 09:14
e mettendo il path assoluto di /usr/bin/python3 ?

Parny
22-02-2011, 11:45
Con il path assoluto al programma penso proprio che vada (stasera provo e ti so dire). Però la vedevo come ultima spiaggia, perché vorrei conservare l'#!/usr/bin/env python3 che è più flessibile.

E il mio era più che altro un dubbio generale: perché quello script lanciato a mano dall'utente x funziona perfettamente mentre se lo metto nel crontab (sempre dell'utente x) non va?

sacarde
22-02-2011, 12:24
non ha le variabili di ambiente

Parny
22-02-2011, 12:36
Domanda niubba, c'è un modo per aggiungerle?

sacarde
22-02-2011, 12:51
e' proprio env che modifica/valorizza le variabili


in bash esiste:

#!/bin/bash -l




p.s.
man env
man bash

Parny
23-02-2011, 10:53
Alla fine mi sono arreso alla path assoluta all'interprete python.
* * * * * /usr/local/bin/python3 /path_allo_script
Così ovviamente funziona.

Grazie comunque per le risposte.
Ciao