Cómo crear tareas programadas en Ubuntu para trabajos diarios/semanales/mensuales
¿Quiere ejecutar un comando o un script diariamente, semanalmente, mensualmente o en otro horario determinado? Es fácil hacer esto en Ubuntu mediante una tarea cron.
Cron es un programador de trabajos basado en el tiempo para ejecutar comandos o scripts periódicamente en horas, fechas o intervalos fijos. Normalmente se utiliza para el mantenimiento o la administración del sistema, aunque puede resultar útil para fines generales, por ejemplo, descargar archivos de Internet a intervalos regulares.
1. Edite archivos crontab:
Los usuarios pueden configurar un trabajo cron fácilmente configurando el archivo crontab mediante el comando crontab. Está preinstalado en sistemas basados en Ubuntu. Y cada usuario tiene su propio archivo de configuración crontab.
b.) Programar tarea para el usuario actual:
Para ejecutar un comando o secuencia de comandos por parte del usuario actual, simplemente abra la terminal desde el iniciador de aplicaciones del sistema y ejecute el comando:
crontab -e
Por primera vez, se le pedirá que seleccione un editor para editar el archivo de configuración. Elija uno que prefiera o presione Entrar para usar el editor de texto nano predeterminado.
b.) Si necesita privilegios de root o sudo:
Para comandos o secuencias de comandos que necesitan privilegios de usuario sudo o root, puede ejecutar el siguiente comando en su lugar:
sudo crontab -e
Creará (si no saldrá) o abrirá el archivo de configuración para el usuario root.
c.) Especifique un usuario para ejecutar la tarea programada:
Puede agregar el indicador -u
para especificar el usuario, ji por ejemplo.
sudo crontab -u ji -e
El usuario puede ser root, por lo que hará lo mismo con sudo crontab -e
:
sudo crontab -u root -e
2. Establezca el intervalo de tiempo, comando o secuencia de comandos para que se ejecute periódicamente:
Después de ejecutar un comando en el paso 1, abre el archivo de configuración en la ventana de terminal (o consola de comandos).
Ahora desplácese hacia abajo y agregue una nueva línea:
* * * * * <command or script>
Los primeros 5 asteriscos “*” especifican la hora y la fecha; cámbielos en consecuencia.
Ejemplos:
a.) Por ejemplo, para ejecutar un script python3 en mi carpeta Documentos a medianoche (00:00) todos los domingos, use:
0 0 * * 0 python3 /home/ji/Documents/script.py
Aquí :
- el primer 0 especifica el minuto, use * para cada minuto.
- el segundo 0 especifica la hora, use * para cada hora.
- la tercera bandera * especifica el día del mes, todos los días si no se especifica el día de la semana.
- la cuarta bandera * dice todos los meses.
- la quinta bandera (tercer 0) especifica el día de la semana. De 0 a 6 significa de domingo a sábado.
b.) Ejecute el comando echo "hello world!"
todos los días a las 16:30, agregue esta línea:
30 16 * * * echo "hello world!"
c.) Puede usar */n
para ejecutar cada enésimo intervalo de tiempo. Y utilice varios intervalos de tiempo específicos con comas.
Por ejemplo, ejecute el comando todos los viernes a la primera, segunda y tercera hora cada cinco minutos (01:00, 01:05, 01:10,…, 02:00, 02:05, 02:10,…, 03: 55).
*/5 1,2,3 * * 5 echo "hello world!"
Finalmente, guarde el archivo de configuración. Si lo edita mediante nano, presione Ctrl+X en el teclado, escriba y y presione Enter para guardarlo.