[CentOS-es] Cron - programar ultimo domingo de cada mes -

René Lara Alvarado admin en probajio.com.mx
Vie Nov 30 17:25:18 UTC 2012


Creo que programar un scripth en bash  para saber si un una fecha dada es
domingo último del mes y respaldadando en caso de que lo sea, es algo
solventable

Esta idea de cal me parece buena para ello o bien con alguna de las ideas ya
expuestas que son mas o menos

Evaluar la fecha de hoy
Si DiaSem=7 y Mes=2 y DiaDelMes>=23
   Es domingo ultimo de un febrero.
   respaldar
FinSi

Si DiaSem=7 y Mes<>2 y DiaDelMes>24
   Es domingo ultimo de un mes distinto a febrero
   respaldar
FinSi

(solo resolver los casos especiales  que ya mencionaron con el 24)

Luego poner un cron que se ejecute diario ese scritpt
Si, ya se que no se desea que se ejecute diario pero bueno, el cron al final
de cuentas debe evaluar diariamente, de manera interna pero lo hace, ademas
que no es pesado


Ahora, ¿será realmente importante el respaldar en ese domingo? ¿no puede ser
cualquier domingo con tal de que se haga cada mes? 
Muchas veces los sistemas no los llevan tan al día como para pensar que el
dia 1 ya tengo todo lo del mes anterior.
En las contabilidades aspectos como el tipo de cambio, hacen que esté
completo todo un poco despues.



r.lara




-----Mensaje original-----
De: centos-es-bounces en centos.org [mailto:centos-es-bounces en centos.org] En
nombre de Héctor Herrera
Enviado el: Viernes, 30 de Noviembre de 2012 11:06 a.m.
Para: centos-es en centos.org
Asunto: Re: [CentOS-es] Cron - programar ultimo domingo de cada mes -

Y calcular en base a la salida del comando 'cal' el último domingo del mes?
Yo creoque también podría ser una alternativa...

Si tenemos la salida de cal como sigue:

   November 2012
 S  M Tu  W Th  F  S
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30

Podemos contar cuántas filas tiene. Si tiene 6 filas, miramos el primer
número de la fila 6. Si tiene 7 filas, miramos el primer número de la fila
7. Y eso lo asignamos en un cron.monthly. Insisto, que dicho script se
ejecute el primer día del mes.

Entonces, tu formato de cron vendría a ser algo como:
#[min] [hour] [day of month] [month] [day of week] [program to be run]
   *        *          dia.sh            *           Sun
lo-que-quieras-ejecutar

Espero se entienda.


El 30 de noviembre de 2012 13:42, Eddy Olivo <eddyolivo en gmail.com> escribió:

> Leonardo tendrías que ver la sugerencia de Carlos para la programación de
> ese CRON puntual, ya que es inusual....y no es por la vía convencional.
>
> saludos
>
> El 30 de noviembre de 2012 12:34, Leonardo Serrano <
> leo en audiovisuales.icaic.cu> escribió:
>
> > #[min]*[hour]*  [day of month] [month] [day of week] [program to be run]
> >
> > debajo de donde dice hour (hora militar si mal no recuerdo)
> >
> >
> >
> >
> >
> > El 30/11/2012 11:27 a.m., Eddy Olivo escribió:
> > > gracias a todos nuevamente... Carlos en lo que sugieres donde
> especifico
> > la
> > > hora en que se ejecutara?
> > >
> > > saludos
> > >
> > > El 30 de noviembre de 2012 11:57, Carlos Martinez <camarti en gmail.com
> > >escribió:
> > >
> > >> Saludos.
> > >>
> > >> Esto  no se puede hacer en cron puro habría que hacer algo como esto:
> > >>
> > >> #[min] [hour] [day of month] [month] [day of week] [program to be
run]
> > >>    18      0         *                   *           0
> > >> [ `date "+%d"` -gt 24 ]  && /path/to/script
> > >>
> > >> Lo que se hace en la parte de cron es ejecutar la tarea cada domingo.
> > >> Lo que hace [ `date "+%d"` -gt 24 ]  && /path/to/script es asegurarse
> > >> parcialmente, que el domingo sea el último de cada mes.
> > >>
> > >> En otras palabras, hay que crear código (bash, tcsh, perl), que se
> > >> asegure que el domingo es efectivamente el último de cada mes. En el
> > >> caso de [ `date "+%d"` -gt 24 ] este falla para los siguientes meses
> > >> de aquí al 2020: Feb-2013, Nov-2013, Feb-2014, Feb-2015, Abr-2016,
> > >> Sep-2017, Feb-2019 y Nov-29. En ese caso, o se agregan tareas
> > >> específicas para esos meses en particular o se hacen mayores
> > >> comprobaciones en el script sobre la fecha. 8 tareas en cron
> > >> adicionales de aquí al 2020 frente un script mas complicado ... me
> > >> quedo con las 8 tareas.
> > >>
> > >>
> > >>
> > >>
> > >>
> > >> 2012/11/30 Eddy Olivo <eddyolivo en gmail.com>:
> > >>> Estimados
> > >>>
> > >>> Luego de mucho buscar en google, no encuentro como resolver mi
> > necesidad
> > >> y
> > >>> le escribo para solicitarles el favor de echarme una mano.
> > >>>
> > >>> Lo que deseo hacer es ejecutar una tarea (CRON) el ultimo domingo de
> > cada
> > >>> mes.
> > >>>
> > >>> --
> > >>> Saludos,
> > >>>
> > >>> Eddy Olivo
> > >>> _______________________________________________
> > >>> CentOS-es mailing list
> > >>> CentOS-es en centos.org
> > >>> http://lists.centos.org/mailman/listinfo/centos-es
> > >>
> > >>
> > >> --
> > >> Atte.,
> > >> Carlos Andrés Martínez
> > >> _______________________________________________
> > >> CentOS-es mailing list
> > >> CentOS-es en centos.org
> > >> http://lists.centos.org/mailman/listinfo/centos-es
> > >>
> > >
> > >
> >
> >
> > --
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > ---------------------------
> > Tec.Leonardo Serrano Berdeal
> > Administrador de la Red
> > Audiovisuales
> > ICAIC
> >
> >
> >
> > _______________________________________________________________
> > Instituto Cubano del Arte e Industria Cinematográficos - ICAIC
> > **Visite, Visit** http://www.cubacine.cu
> > _______________________________________________
> > CentOS-es mailing list
> > CentOS-es en centos.org
> > http://lists.centos.org/mailman/listinfo/centos-es
> >
>
>
>
> --
> Saludos,
>
> Eddy Olivo
>
> Skype: eddyolivo
> FB: http://www.facebook.com/eddyolivo
> twitrer: @eddyolivo <https://twitter.com/#!/eddyolivo>
> _______________________________________________
> CentOS-es mailing list
> CentOS-es en centos.org
> http://lists.centos.org/mailman/listinfo/centos-es
>



-- 
Saludos

*Héctor Herrera Anabalón*
Egresado ICCI UNAP
Servicio Arquitectura Galatea - Oficina Técnica http://www.galatea.cl
Miembro USoLIX Victoria
Registered User #548600 (LinuxCounter.net)
+56983118902
_______________________________________________
CentOS-es mailing list
CentOS-es en centos.org
http://lists.centos.org/mailman/listinfo/centos-es




Más información sobre la lista de distribución CentOS-es