Cómo configurar un trabajo de Cron que solo se extiende de lunes a viernes

Cómo configurar un trabajo de Cron que solo se extiende de lunes a viernes
Para la mayoría de las organizaciones, solo trabaja de lunes a viernes de lunes a viernes. En tal caso, algunas tareas solo deberían ejecutarse entre semana y no los fines de semana. Podría ser una tarea como enviar correos electrónicos, verificar la asistencia o crear copias de seguridad. Cualquiera que sea la tarea, hay una manera de automatizarla para ejecutar solo en un momento específico todos los días de lunes a viernes. Para lograr eso, debe usar el Linux cron utilidad. Si no tiene idea de cómo usar el crontab para programar algunas tareas que solo se ejecutan entre semana, siga leyendo para averiguarlo.

Cómo programar tareas usando Cron en Linux y Unix

Hay varias formas de usar el cron para programar tareas. Pero la forma común implica especificar la fecha y la hora. Para hacer esto, se ejecuta un comando especificado. El secreto implica utilizar los 5 campos de un comando crontab para definir qué día debe ejecutar el comando.

Aquí, los trucos radican en el uso de los caracteres especiales y, en particular, el guión (-) que proporciona una lista de los valores para usar para un campo determinado.

La sintaxis para el crontab es la siguiente:

Min Hora Día del Mes Mes día de semana [Comando]

Nuestro enfoque está en el Día de la semana. Los valores permitidos son 0 a 6, donde 0 es domingo y 6 es el sábado. Por lo tanto, para especificar un comando que se ejecuta solo de lunes a viernes, establecemos el día de la semana en 1-5 sin espacios.

El comando sería:

* * * * * 1-5 [comando]

La sintaxis dada no especifica un tiempo específico que el comando debe ejecutar. Si necesitaba configurarlo para que se ejecute todos los días de la semana en 10:00 A.M, El comando sería:

0 10 * * 1-5 [comando]

Ahora, agregue el siguiente comando en la parte inferior de su archivo CRONTAB ejecutando el comando que sigue:

crontab -e

Guarda el archivo y cierra.

Ahora tienes un trabajo cron para el usuario actual. Si ejecuta un script como en este caso, asegúrese de dar su camino completo.

Otras opciones para ejecutar un comando de lunes a viernes

Hay varias formas de establecer un comando que se ejecuta de lunes a viernes. Tengamos algunos ejemplos:

1. Entre semana de un mes determinado

No todos los meses son un día de trabajo. Por lo tanto, es posible que desee ejecutar su trabajo cron en un mes en particular. Para esto, puede especificar el mes utilizando el número de mes donde 1 representa enero. Para ejecutar solo el mismo comando en enero a las 10:00 a.m., cámbielo para reflejar el siguiente:

0 10 * 1 1-5 [Comando]

2. Entre semana y días específicos de un mes determinado

Se pueden programar algunas tareas en un día determinado de un mes determinado, siempre que sea un día laborable. Por ejemplo, puede configurar un script de copia de seguridad que se ejecuta en el 5th día de enero de lunes a viernes y en un momento dado. El comando para eso sería:

0 10 5 1 1-5 [Comando]

En el ejemplo anterior, especificamos que el script con nombre es ejecutar a las 10:00 a.m. en las 5th día de enero de lunes a viernes.

La conclusión es que puede cambiar los diversos campos para ajustar cuando el comando debe ejecutarse solo entre semana. Puede elegir qué mes debe ejecutar o especificar un rango. Además, puede establecer el tiempo exacto o usar un intervalo a una hora particular para que coincida con su necesidad.

Conclusión

Cubrimos cómo puede usar el crontab para programar un trabajo que se ejecuta solo de lunes a viernes. Además, aprendimos las otras formas en que puede jugar con los otros campos para ser más específicos el día del mes, la hora, el minuto y el mes que su comando debe ejecutar. Pruébalo!