Dia da semana
Publicado por DAVISON MARCEL PASQUALINI (última atualização em 20/12/2009)
[ Hits: 16.528 ]
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".
# 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
Echoc (Comando echo, mas com cores)
dcalc: Calculadora Com Conversão de Bases
Script para monitoramento de processos em execução no sistema
Myhard - Informações sobre seu hardware
[wgetreload] Evitando conexão "staled" (parada) no wget
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Mint Xfce não mantém a conexão no wi-fi (2)
Problemas com Driver NVIDIA (5)
Warcraft II Remastered no Linux? (8)









