2010-12-20 22 views
6

Tengo un script de python que me gustaría agregar a cron.Ejecutando un script de Python usando Cron?

El script tiene el permiso + x.

¿Cómo debo agregarlo a crontab? (decir, quiero que se ejecute cada minuto).

Importante: cuando navego (usando el shell) a la carpeta del script, no puedo ejecutarlo usando "./script_name.py"; no funciona Sin embargo, cuando lo ejecuto usando "Python script_name.py", todo funciona.

Respuesta

8

De cron que se hará funcionar el script como script_name.py y su guión cumple con los siguientes criterios:

  • bit de ejecución se establece
  • de hash-bang de la secuencia de comandos está configurado correctamente, por ejemplo. #!/usr/bin/env python
  • que es accesible desde el PATH
    • por ejemplo colocarlo en /usr/local/bin/ o /opt/local/bin/ (y son accesibles a su sistema PATH.)

Si se cumplen estas condiciones, debe ser capaz de ejecutar desde cualquier lugar en el sistema local como script_name.py

+0

Gracias. ¿Qué sucede si el script reside en un área diferente (no en '/ usr/local/bin /' o '/ opt/local/bin /')? ¿hay algo que pueda hacer para que se ejecute? – user3262424

+1

Por supuesto, pero aún tiene que agregar su ubicación de carpeta a su RUTA, la razón por la que sugiero esas ubicaciones es porque es ahí donde deberían residir (históricamente) los contenedores/guiones del sistema local/usuario opcional. Pero no hay ninguna razón por la que no pueda usar otra carpeta. También puede invocar la secuencia de comandos utilizando una ruta de acceso absoluta '/ myfolder/sub/bin/etc/wherever/script_name.py' en su crontab. Simplemente no es la forma convencional de hacerlo, y por lo tanto crea confusión si este sistema necesita ser administrado por otra persona (o usted en el futuro) – ocodo

+0

Gracias por su ayuda. Traté de hacer esto, y el script parece funcionar a través de cron, pero por alguna razón, se detiene después de unos segundos. más información aquí: http://stackoverflow.com/questions/4487145/python-script-not-working-via-cron ¿Por casualidad sabes lo que me estoy perdiendo? – user3262424

Cuestiones relacionadas