Dia da semana

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

[ Hits: 16.179 ]

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

Slocal Manipulação de pacotes Slackware

Resolvendo NO_PUBKEY

Configuração do horário de verão 2006/2007 (Red Hat, Fedora)

Xqemu! Uma interface gráfica simples para o qemu.

backup via ftp em formato tgz


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts