minutos - Ejecutar un trabajo cron a las 2:30 AM todos los días
ejecutar crontab manualmente (7)
Para editar:
crontab -e
Añade esta línea de comando:
30 2 * * * /your/command
- Formato Crontab:
MIN HORA DOM MON DOW CMD
- Formato de significados 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.
- Formato Crontab:
Reinicie cron con los últimos datos:
service crond restart
¿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.
30 2 * * * wget https://www.yoursite.com/your_function_name
La primera parte es para configurar el trabajo cron y la siguiente parte para llamar a su función.
Como se ve en las otras respuestas, la sintaxis a utilizar es:
30 2 * * * /your/command
# ^ ^
# | hour
# minute
Siguiendo el formato estándar de 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 a crontab
usando crontab -e
. Una vez que haya terminado, guarde y salga (si está utilizando vi
, escribiendo :x
hace). La buena idea de usar esta herramienta es que si escribe un comando no válido, es probable que obtenga 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 la ejecución de crontab, puede consultar la sección Depuración de crontab o ¿Por qué crontab no ejecuta mi script PHP? .
Como una adición a todas las excelentes respuestas mencionadas anteriormente, consulte https://crontab.guru/ , un recurso en línea útil para verificar su sintaxis de crontab.
Lo que obtienes es una representación humana legible de lo que has especificado.
Vea los ejemplos a continuación:
- 30 2 * * * (respuesta de esta pregunta)
- @daily
- 59 23 31 12 *
Una forma fácil de escribir cron es usar el generator cron en línea. Generará la línea para 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.
tiene que ser :
0 30 2 * * ?
el primer valor representa los segundos, el segundo valor representa los minutos, el tercer valor representa las horas, el cuarto valor representa el día del mes el quinto valor representa el mes Esto es lo que he estado usando para ejecutar mi trabajo cron a través de Quartz
crontab -e
añadir:
30 2 * * * /your/command