[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Pegar primeiro ou último domingo do mês
From: |
Eduardo Jaime Quiros Batres |
Subject: |
Re: [shell-script] Pegar primeiro ou último domingo do mês |
Date: |
Fri, 10 Nov 2006 11:34:29 -0200 |
User-agent: |
KMail/1.8.2 |
Olha,
Resolvi mas deve haver um jeito mais fácil.
Aproveitei uma rotina que tinha feito para obter o ultimo dia do mês (assunto
que surgiu na lista e também achei interessante) e fiz a
"ultimo_domingo_do_mes.sh".
#!/bin/bash
# dados, opcionalmente, o mes e o ano, retorna o ultimo domingo do
# mes informado, o ano soh eh necessario para mes de fevereiro e
# quando o ano for bisexto
MES=$1 # primeiro parametro eh o mes,
[ -z $1 ] && MES=$(($(date +%m)+0)) # se nulo eh o mes atual.
MES=$(($MES+1)) # preciso apontar "para a frente",
[ $MES -eq 13 ]&& MES=1 # se fui muito "p/ a frente" volto.
ANO=$2 # segundo parametro eh o ano,
[ -z $2 ] && ANO=$(date +%Y) # se nulo eh o ano atual.
ULT_DIA_MES=$(date -d"${ANO}-${MES}-01 -1 day" +%e)
DIA_DA_SEMANA=$(date -d"${ANO}-${MES}-01 -1 day" +%w)
if [ $DIA_DA_SEMANA -eq 0 ];then
ULTIMO_DOMINGO=$ULT_DIA_MES
else
ULTIMO_DOMINGO=$((${ULT_DIA_MES}-${DIA_DA_SEMANA}))
fi
echo 'o ultimo domingo do mes cai no dia' $ULTIMO_DOMINGO
exit
Em Sex 10 Nov 2006 10:39, carloshessbr escreveu:
> Estou tendo uma dificuldade em conseguir achar alguma maneira de pegar o
> primeiro ou o ultimo domingo do mês, tenho um script de backup que só
> roda no domingo e tenho uma rotina que deve ser executado uma vez por
> mês no domingo, se alguém puder me ajudar eu agradeço.
>
> Valeu....
--
Eduardo Jaime Quirós Batres (address@hidden)