Ejecutando cron cada 10 minutos

16

Tengo un script de Python en mi escritorio: /home/ceasor/Desktop/script.py

En /etc/crontab, escribí:

0 */2   * * *   ceasor    sudo python  /home/ceasor/Desktop/script.py

El script de Python no se ejecuta. ¿Cómo ejecuto cron cada 10 minutos?

Eric Leschinski
fuente
2
¿Por qué llamas sudo python? Si quieres ejecutarlo como root, solo especifica ese usuario en tu crontab. También 0 */2significa cada 2 horas, no cada 10 minutos.
Joachim Sauer
¿Está en tu escritorio? Entonces tienes el camino equivocado en tu crontab
Ocaso Protal
1
¿Puede su cuenta ejecutar sudo sin contraseña? ¿Es Python en el camino que ve cron ?. También ese crontab dice cada 2 horas. si quieres cada 10 minutos usa * / 10 * * * *
Doon

Respuestas:

26

Su línea significa recorridos a 0 minutos cada dos horas (es decir, 00:00, 02:00, 04:00, etc.).

Si desea ejecutar algo cada 10 minutos:

*/10 * * * *  ceasor    sudo python  /home/ceasor/Desktop/script.py

Me tomé la libertad de corregir el camino equivocado.

Para su información, estos son los significados de los valores:

         field          allowed values
          -----          --------------
          minute         0-59
          hour           0-23
          day of month   1-31
          month          1-12 (or names, see below)
          day of week    0-7 (0 or 7 is Sun, or use names)
          username       any user from the system
          command        the command you want to run

Y si desea ejecutar algo como root, debe colocar en rootlugar del ceasornombre de usuario y soltar el sudo.

krtek
fuente
13

Ejecute un comando cada 10 minutos:

*/10 * * * *   ceasor    sudo python  /home/ceasor/script.py

El */10token disparará el cronjob cada 10 minutos.

También puede enumerar cada minuto que desea que se active:

0,10,20,30,40,50 * * * * sudo python /home/ceasor/Desktop/script.py
kradmiy
fuente
4

Para ejecutar algo cada diez minutos, normalmente pongo algo como lo siguiente en mi crontab:

0,10,20,30,40,50 * * * * sudo python /home/ceasor/Desktop/script.py

Ajuste el 0,10,20, ... ya que necesita golpear los minutos de la hora que desee.

GreenMatt
fuente
puede usar * / 10 en lugar de la enumeración, significa cada 10 minutos
krtek
1
@Krtek: Sí, eso se ha dicho en otras respuestas. Ambas formas funcionan, y pensé que sería bueno informar al OP sobre las alternativas.
GreenMatt
3

Por cada diez minutos que necesites

  */10 * * * *     ceasor         sudo python /home/ceasor/Desktop/script.py

y si el script está dentro Desktop/, debe usar esa ruta como en mi ejemplo aquí.

Dirk Eddelbuettel
fuente