Esegui script python su Crontab

Sto cercando di eseguire uno script python usando il crontab di Linux, ma ho trovato molte soluzioni e nessuna di esse funziona. Ad esempio: modifica l’anacron su /etc/cron.d o usa crontab -e.

Voglio eseguire questo script ogni 10 minuti.

Quale file devo modificare per configurarlo?

Grazie in anticipo

MODIFICARE

Metto questa linea alla fine del file, ma non cambia nulla. Devo riavviare qualsiasi servizio?

*/2 * * * * /usr/bin/python /home/souza/Documets/Listener/listener.py 

EDIT [2]

Ragazzi, ho seguito il codice sorgente. C’è forse un problema qui, ma quando lo eseguo manualmente, funziona:

http://pastebin.com/qsWHNzqT

Basta usare crontab -e e seguire il tutorial qui:

http://adminschoice.com/crontab-quick-reference

Guarda il punto 3 per una guida su come specificare la frequenza.

In base alle tue esigenze, dovrebbe essere efficacemente:

 */10 * * * * /usr/bin/python script.py 

Metti il ​​tuo script in un file foo.py inizia con

 #!/usr/bin/python 

quindi dare il permesso di esecuzione a quello script usando

 chmod a+x foo.py 

e usa il percorso completo del tuo file foo.py nel tuo crontab .

Vedi la documentazione di execve (2) che sta gestendo lo shebang

Come hai detto , non cambia nulla ,

Innanzitutto, devi redirect sia stdin che stderr dall’esecuzione di crontab come di seguito:

 */2 * * * * /usr/bin/python /home/souza/Documets/Listener/listener.py > /tmp/listener.log 2>&1 

quindi è ansible visualizzare il file /tmp/listener.log per vedere se lo script è eseguito come previsto.

Secondo, indovina cosa intendi cambiare qualcosa guardando i file creati dal tuo programma:

 f = file('counter', 'r+w') json_file = file('json_file_create_server.json','r+w') 

il processo crontab sopra non creerà questi file nella directory /home/souza/Documets/Listener , in quanto il cron job non viene eseguito in questa directory e si utilizza il percorso relativo nel programma. Quindi, per creare questi file nella directory /home/souza/Documets/Listener , il seguente cron job farà il trucco:

 */2 * * * * cd /home/souza/Documets/Listener && /usr/bin/python listener.py > /tmp/listener.log 2>&1 

Passare alla directory di lavoro ed eseguire lo script da lì, quindi è ansible visualizzare i file creati sul posto.