Dia da semana

Publicado por DAVISON MARCEL PASQUALINI (última atualização em 20/12/2009)

[ Hits: 10.962 ]

Download dia.sh




Este script foi uma brincadeira a partir de um cálculo matemático que um amigo me passou sobre como encontrar em que dia da semana determinada data cai, daí resolvi "scriptar".

  



Esconder código-fonte

# Rotina de calculo do dia da semana


valida_mes ()
{
if [ "$mes" -gt 12 ]; then
echo "ERRO - MSG01 - MES $mes E INVALIDO, ESPECIFIQUE UM MES ENTRE 01 E 12"
elif [ "$mes" -le 0 ]; then
echo "ERRO - MSG01 - MES $mes E INVALIDO, ESPECIFIQUE UM MES ENTRE 01 E 12"
elif [ "$mes" -lt 3 ]; then
m=`expr $mes + 10`
a=`expr $a - 1`
else
m=`expr $mes - 2`
fi
}



valida_ano ()
{

if [ "$ano" -le 999 ] ; then
echo "ERRO - MSG02 - ANO FORA DO RANGE DE CALCULO ( 999 a 9999 )" 
elif [ "$ano" -gt 9999 ] ; then
echo "ERRO - MSG02 - ANO FORA DO RANGE DE CALCULO ( 999 a 9999 )" 
else 
s=`echo $ano | cut -c 1-2`

fi

}


data="$1"
d=`echo $data | cut -d"/" -f1`
mes=`echo $data | cut -d"/" -f2`
ano=`echo $data | cut -d"/" -f3`
a=`echo $ano | cut -c 3-4`
add="1"


valida_mes
valida_ano
int1=`expr \( 13 \* $m - 1 \) / 5`
int2=`expr $a / 4`
int3=`expr $s / 4`
f=`expr $d + $int1 + $a + $int2 + $int3 - \( 2 \* $s \)`


while [ $f -lt 0 ]
do
f=`expr $f + 7`
done


f1=` expr $f / 7`

fim=`expr \( $f - $f1 \* 7 \) + $add `

case "$fim" in

"1" )
echo "Dia $d/$mes/$ano - Domingo"
;;
"2" )
echo "Dia $d/$mes/$ano - Segunda-Feira"
;;
"3" )
echo "Dia $d/$mes/$ano - Terca-Feira"
;;
"4" )
echo "Dia $d/$mes/$ano - Quarta-Feira"
;;
"5" )
echo "Dia $d/$mes/$ano - Quinta-Feira"
;;
"6" )
echo "Dia $d/$mes/$ano - Sexta-Feira"
;;
"7" )
echo "Dia $d/$mes/$ano - Sabado"
;;
* )
echo "ERRO - MSG03 - Erro na rotina de calculo"
;;

esac

Scripts recomendados

registo de logins e logouts

Backup via FTP

Postfix: Configurando o Gmail como Relay (moleza)

Localizando tentativas de invasão

plaspkg lite


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts