En este tutorial, aprenderá todo lo que necesita saber sobre Cronjob. Cubriremos qué es un cronjob y cómo crear uno e intentaremos que sea menos confuso.
¿Qué es un Cronjob?
Un Cronjob es una tarea que se realiza automáticamente en un momento específico. Tomemos sudo apt-get update
por ejemplo.
Si desea mantener su repositorio apt actualizado en todo momento, puede utilizar un Cronjob para que lo haga por usted, una vez al día, por ejemplo.
¿Cómo funciona un Cronjob?
Usamos una instancia de Ubuntu para este ejemplo. Después de iniciar sesión, ejecute:
sudo crontab -e
Si ejecuta esto por primera vez, se le preguntará qué editor desea usar de forma predeterminada. Recomendamos usar Nano para principiantes.
Y así es como se ve tu archivo crontab cuando lo abres por primera vez:
Este archivo crontab es el lugar donde desea agregar todos sus cronjobs. Es importante que se familiarice con la sintaxis.
Ahora, cuando miras la línea inferior, puedes ver comando m h dom mon dow
Esto es lo que necesitas entender, así que vamos a desglosarlo:
m | h | dom | lunes | bajo |
Minuto | Hora | Día del mes | Mes | Día de la semana |
Muy bien, esto ya debería arrojar algo de luz.
Ahora necesitamos entender con qué valores podemos trabajar:
- Minutos:0 - 59
- Horario:0 - 23
- DOM:1 - 31
- Mes:1 - 12
- DOW:0 es domingo y 7 es domingo, por ejemplo:
- 0 - 6 => Domingo - Sábado o
- 1 - 7 => Lunes - Domingo
- Normalmente no usas 7 tho, solo 0-6
- * Es un comodín, lo que significa que, básicamente, si toma el campo de los minutos y le pone un comodín, se ejecutará cada minuto.
Hagamos una pequeña prueba por ti mismo:configura un Cronjob que se ejecute todos los sábados a las 14:30 .
Respuesta:
30 14 * * 6
Muy bien, entonces esto debería darte una buena idea de cómo configurar la hora en consecuencia. El comando completo se vería así:
15 23 15 * * sudo apt-get update
Code language: JavaScript (javascript)
Esto ejecutaría sudo apt-get update a las 23:15, todos los meses el día 15, sin importar el día.
En caso de que realmente no puedas entenderlo, dirígete a https://crontab.guru/ y deja que esta herramienta piense por ti.
Configurando un trabajo cron
Y finalmente configuremos el Cronjob:
sudo crontab -e
Desplácese hacia abajo hasta el final del archivo e ingrese la hora y el comando deseados:
30 14 * * * sudo apt-get update
Code language: JavaScript (javascript)
Presiona CTRL + O para escribir el archivo y CTRL + X salir (Nano)
Conclusión
Esto debería darle una buena idea de cómo funcionan realmente los Cronjobs. Una vez que haya entendido la lógica, es muy simple.