Ejecución programada de scripts

Hola, tengo un script para hacer copias de seguridad diarias y me gustaría saber cómo se programa para ejecutarlo a una hora en concreto por ejemplo a la una de la madrugada, he leído algo del cron, ¿podrías explicármelo o ponerme un ejemplo?
Gracias. Saludos.
Respuesta
1
Es muy sencillo. Un fichero crontab tiene el siguiente formato:
Min hora dia mes dia_sem comando
Donde:
Min es minutos (0 a 59)
Hora es hora (0 a 23)
dia es dia del mes (1 a 31)
mes es número del mes (1 a 12)
dia_sem es día de la semana (0=domingo, 1=lunes, ... 6=sábado)
comando es el comando o script que deseas lanzar.
* significa todos.
Por ejemplo, si tu script de copia se llama /usr/usuario/backup/copia.sh y quieres lanzarlo todos los días de la semana de lunes a viernes a las 23 horas, te creas un fichero con este contenido:
0 23 * * 1-5 /usr/usuario/backup/copia.sh
y después ejecutas:
$ crontab <fichero>
o bien te defines como variable de entorno EDITOR=vi (u otro editor) y mediante
$ crontab -e
Entras en el vi (o el editor definido) y escribes todo eso (o lo añades si tenías más cosas planificadas)
Para ver qué tienes planificado:
$ crontab -l
NOTA IMPORTANTE: cuando se planifica un comando o script mediante crontab, las variables de entorno hay que especificarlas explícitamente. Es decir, en el propio script deberás definir las variables y el entorno necesario para que el script funcione correctamente. Para ello, puedes poner como primera línea la ejecución de tu .profile o .login dependiendo de la shell que tengas. Sin ello, durante la ejecución del crontab no sabe qué entorno tienes ni qué variables.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas