Foros del Web » Administración de Sistemas » Unix / Linux »

crontab una vez en la vida :)

Estas en el tema de crontab una vez en la vida :) en el foro de Unix / Linux en Foros del Web. Hola amigos, Con el tiempo (y los años que llevo encima jejeje).. he ido olvidando cosas . Entonces estoy programando alguna tareas en mi server. ...
  #1 (permalink)  
Antiguo 18/07/2003, 10:03
Avatar de juque  
Fecha de Ingreso: marzo-2002
Ubicación: Temuco, Chile
Mensajes: 84
Antigüedad: 22 años, 1 mes
Puntos: 0
crontab una vez en la vida :)

Hola amigos,

Con el tiempo (y los años que llevo encima jejeje).. he ido olvidando cosas . Entonces estoy programando alguna tareas en mi server. Pero me ha surgido una duda. ¿cómo puedo programar una tarea que se ejecute sólo una vez en la VIDA? (suena dramático!!! )
__________________
~~
www.juque.cl
  #2 (permalink)  
Antiguo 18/07/2003, 10:48
 
Fecha de Ingreso: julio-2003
Mensajes: 165
Antigüedad: 20 años, 10 meses
Puntos: 1
Hola,

Dado que piensas usar crontab, la tarea no resulta muy complicada. En la situación que describes, no es tan importante saber cuántas veces vas a ejecutar una tarea (puede ser 1, 2, 10, 1000 veces...) sino cuándo quieres que se ejecute.

Como probablemente sabrás, la forma de programar tareas en un archivo crontab es mediante líneas que tienen una apariencia como esta:

Código:
minutos    horas    dia_del_mes    mes    dia_de_la_semana    comando
Así que todo lo que tienes que hacer es definir estos valores de modo tal que representen una hora y fecha única. Así el comando que indiques se ejecutará una sola vez.

Por ejemplo, si quieres que se ejecute a las 3:00 pm del 20 de Julio de 2003, por decir cualquier cosa, tendrías que modificar tu archivo crontab (cosa que puedes hacer mediante `crontab -l') y agregar una línea como:

Código:
0 15 20 7 * /ruta/hacia/el/comando/ejecutable
Espero que te ayude a recordar un poco... :) Saludos.
  #3 (permalink)  
Antiguo 18/07/2003, 10:56
Avatar de juque  
Fecha de Ingreso: marzo-2002
Ubicación: Temuco, Chile
Mensajes: 84
Antigüedad: 22 años, 1 mes
Puntos: 0
Notable respuesta mi amigo, muchas gracias por ocupar tu tiempo (lamento decirte que ya sé todo eso).

A ver, aplicando el ejemplo que tu me das, que pasará el año 2004 en esa misma fecha. Se perfectamente que puedo eliminar esa linea en mi crontab para que no se vuelva a ejecutar, pero yo quiero programar la tarea y luego olvidarme de ella, con la certeza que nunca mas se repetirá.

gracias de nuevo
__________________
~~
www.juque.cl
  #4 (permalink)  
Antiguo 18/07/2003, 12:41
 
Fecha de Ingreso: julio-2003
Mensajes: 165
Antigüedad: 20 años, 10 meses
Puntos: 1
Vaya, que interesante problema, no había caído en cuenta en eso. Creo que también es un poco curioso que una utilidad clásica de Unix como `cron' no incluya ese tipo de funcionalidad... no me parece muy acorde con el "espíritu Unix". Uno podría esperar que los crontabs permitieran programar la ejecución de comandos cada cierta cantidad de años también, si uno quisiera. Qué cosas...

Pero bueno, reconsiderando el problema, y habiendo establecido que crontab no nos sirve en este caso, la solución debe estar por otra parte.

Precisamente, y no sé si ya la conocías, hay una herramienta llamada `at'. Funciona en conjunto con el daemon `atd', y su propósito es similar al de cron, con la diferencia de que `at' programa tareas para ser ejecutadas una sola vez, a determinada hora, en determinada fecha.

Si cuentas con esta herramienta en tu sistema, el modo de programar una tarea es simple. Hay un amplio rango de formas de especificar fechas y horas para programar las tareas con `at'. En el manual puedes leer sobre todas ellas.

Una forma que me parece simple es usar un formato como por ejemplo "HH:MM DD.MM.YY":

Código:
$ at 13:36 18.07.03
warning: commands will be executed using /bin/sh
at> /ruta/hacia/el/comando
at> <EOT>
job 1 at 2003-07-18 13:36
(en ese ejemplo, para finalizar la entrada de comandos, pulsé Ctrl-D).

Bueno, espero que esta sea una solución válida de tu problema y ahora puedas descansar tranquilo en las noches... :) Saludos
  #5 (permalink)  
Antiguo 18/07/2003, 13:15
Avatar de juque  
Fecha de Ingreso: marzo-2002
Ubicación: Temuco, Chile
Mensajes: 84
Antigüedad: 22 años, 1 mes
Puntos: 0
NOTABLE !!!!!!, at es mi salvación. ahora puedo estar tranquilo.
Muchas muchas gracias!.
__________________
~~
www.juque.cl
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:30.