Ejecutar un trabajo cron a las 2:30 a.m. todos los días


310

¿Cómo configurar un trabajo cron para que se ejecute todas las noches a las 2:30? Sé cómo hacerlo funcionar a las 2, pero no a las 2:30.

Respuestas:



150
  1. Para editar:

    crontab -e
    
  2. Agregue esta línea de comando:

    30 2 * * * /your/command
    
    • Formato Crontab:

      MIN HORA DOM MON DOW CMD

    • Significados de formato y valor permitido:
    • MIN Minute field 0 to 59
    • HOUR Hour field 0 to 23
    • DOM Day of Month 1-31
    • MON Month field 1-12
    • DOW Day Of Week 0-6
    • CMD Command Any command to be executed.
  3. Reinicie cron con los últimos datos:

    service crond restart
    

1
use "service cron restart" para ubuntu
AA

61

Como se ve en las otras respuestas, la sintaxis a usar es:

  30 2 * * * /your/command
# ^  ^
# |   hour
# minute

Siguiendo el formato estándar crontab:

 +---------------- minute (0 - 59)
 |  +------------- hour (0 - 23)
 |  |  +---------- day of month (1 - 31)
 |  |  |  +------- month (1 - 12)
 |  |  |  |  +---- day of week (0 - 6) (Sunday=0 or 7)
 |  |  |  |  |
 *  *  *  *  *  command to be executed

También es útil usar crontab.guru para verificar las expresiones de crontab.

Las expresiones se agregan al crontabuso crontab -e. Una vez que haya terminado, guarde y salga (si está usando vi, escribir lo :xhace). La buena idea de usar esta herramienta es que si escribe un comando no válido, es probable que reciba un mensaje en el formulario:

$ crontab -e
crontab: installing new crontab
"/tmp/crontab.tNt1NL/crontab":7: bad minute
errors in crontab file, can't install.
Do you want to retry the same edit? (y/n) 

Si tiene más problemas con el crontab que no se ejecuta, puede verificar Depuración de crontab o ¿Por qué crontab no ejecuta mi script PHP? .


1
crontab.guru es un recurso muy útil
onewhaleid

7

Una manera fácil de escribir cron es usar el generador de cron en línea. Generará la línea por usted. Una cosa a tener en cuenta es que si desea ejecutarlo todos los días (no solo entre semana) debe resaltar todos los días.



1

Como una adición a las excelentes respuestas mencionadas anteriormente, consulte https://crontab.guru/ , un recurso útil en línea para verificar su sintaxis de crontab.

Lo que obtienes es una representación legible por humanos de lo que has especificado.

Vea los ejemplos a continuación:

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.