Saltar al contenido principal

Como usar el cron en linux

Acceder al archivo crontab

El archivo crontab (tabla cron) contiene la lista de tareas programadas para un usuario específico. Para acceder a este archivo, puedes ejecutar el siguiente comando en la terminal:

crontab -e

Esto abrirá el archivo crontab en el editor de texto predeterminado.

Editar el archivo crontab

Dentro del archivo crontab, encontrarás líneas con el formato siguiente:

* * * * * comando_a_ejecutar
note

Cada campo separado por espacios corresponde a:

Minuto (0-59)
Hora (0-23)
Día del mes (1-31)
Mes (1-12)
Día de la semana (0-7, donde tanto 0 como 7 representan domingo)

Puedes personalizar estos campos según tus necesidades. Para programar una tarea, añade una nueva línea con el formato deseado y el comando que deseas ejecutar en el momento programado.

Por ejemplo, para ejecutar un script llamado backup.sh todos los días a las 2:30 AM, puedes agregar la siguiente línea:

30 2 * * * /ruta/al/script/backup.sh
caution

Es importante recordar que si no espeficas el minuto y solo la hora como por ejemplo

* 5 * * * /ruta/al/script/backup.sh

Estaras programando para ejecutar en cada minuto de esa hora programada y esto podria traer problemas dependiendo del script

Guardar y salir del archivo crontab

Después de editar el archivo crontab, guarda los cambios y cierra el editor de texto. En la mayoría de los editores, puedes hacerlo presionando Ctrl + X, seguido de Y y finalmente Enter.

Verificar las tareas programadas

Puedes verificar las tareas programadas en tu crontab ejecutando el siguiente comando:

crontab -l

Esto mostrará una lista de las tareas programadas para tu usuario.

Eliminar una tarea programada

Si deseas eliminar una tarea programada, puedes abrir el archivo crontab con el comando crontab -e y eliminar la línea correspondiente a la tarea que deseas eliminar. Guarda los cambios y cierra el archivo.

Consejos adicionales:

Asegúrate de que los permisos del archivo o script que deseas ejecutar estén configurados correctamente. Si deseas recibir notificaciones por correo electrónico cuando una tarea se haya completado, puedes redirigir la salida estándar a tu dirección de correo electrónico dentro de la línea del comando. Por ejemplo:

30 2 * * * /ruta/al/script/backup.sh >/dev/null 2>&1 | mail -s "Tarea completada" tu@email.com

Hay muchas más opciones y características avanzadas disponibles que puedes explorar consultando la documentación oficial del comando cron.

Consejo Final:

Cuando crees script para el cron recuerda que las variables de entorno PATH entre otras de la terminal que usas y la del cron son diferentes, es por ello que es recomendable usar rutas absolutas para los ejecutables que utilices en el cron