Ejecutar comandos con crontab

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.

Para cambiar el editor por defecto de la shell de linux: export EDITOR=sublime-text
Para cambiar el editor por defecto de la shell de linux: export VISUAL=sublime-text
crontab -e → edita el fichero de las tareas programadas.
crontab -l → lista de tareas que contiene el fichero crontab

* * * * * tarea
Un * equivale a todas las unidades de tiempo correspondientes a la posición de ese asterisco. Cada uno de los * equivale a:
minutos – horas – día del mes – mes – dia de la semana

Sólo dos asteriscos al final significan «todos los meses»:

	
30 6 1 * *        /usr/bin/fetchmail		→ Ejecutarlo el día 1 del mes a las 6:30
	

Sólo tres asteriscos al final significan «todos los días».

	
0 0 * * *      touch /home/monty/Documents/prueba.txt	→ 	Ejecutarlo a las 12 de la noche cada día
15 0 * * *    touch /home/monty/Documents/prueba.txt	→ 	Ejecutarlo a las 12 :15 de la noche cada día
	

Sólo cuatro asteriscos al final significan “cada hora exacta”.

	
25 * * * *    touch /home/monty/Documents/prueba.txt	→ 	Ejecutarlo 15 después de cada hora exacta
	

Otros ejemplos:

Ejecutarlo el día 1 del mes a las 6:30


30 6 1 * *        /usr/bin/fetchmail

Ejecutarlo cada dos día a las 6:30

		
30 6 */2 * *        /usr/bin/fetchmail
		
	

Ejecutarlo de lunes a viernes a las hora en punto

	
0 * * * 1-5        /usr/bin/fetchmail
	

Ejercicio

Definir una tarea con crontab que ejecute una copia de seguridad de la base de datos cada 3 días.

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.