lincolnsol
(usa Fedora)
Enviado em 15/05/2008 - 14:51h
#!/bin/sh
# contador
clear
ano=2010
mes=12
dia=01
hora=00
min=00
until [ $ano -gt 2020 ];
do
for x in $(seq 5);
do
min=$(($min+15))
if [ $min -ge 60 ]; then
min=$(($min-60))
hora=$(($hora+1))
fi
if [ $hora -gt 23 ]; then
hora=$(($hora-24))
dia=$(($dia+01))
elif [ $hora -eq 24 ]; then
hora=00
dia=$(($dia+01))
fi
if [ $mes = 1 ] || [ $mes = 3 ] || [ $mes = 5 ] || [ $mes = 7 ] || [ $mes = 8 ] || [ $mes = 10 ] || [ $mes = 12 ] && [ $dia -gt 31 ]; then
dia=$(($dia-31))
mes=$(($mes+01))
elif [ $mes = 4 ] || [ $mes = 6 ] || [ $mes = 9 ] || [ $mes = 11 ] && [ $dia -gt 30 ]; then
dia=$(($dia-30))
mes=$(($mes+01))
elif [ $mes = 2 ] && [ $ano = 2008 ] || [ $ano = 2012 ] || [ $ano = 2016 ] || [ $ano = 2020 ] && [ $dia -gt 29 ]; then
dia=$(($dia-29))
mes=$(($mes+01))
elif [ $mes = 2 ] && [ $dia -gt 28 ]; then
dia=$(($dia-28))
mes=$(($mes+01))
fi
if [ $mes -gt 12 ]; then
mes=$(($mes-12))
ano=$(($ano+01))
fi
echo $ano $mes $dia $hora $min
done
done
com esse codigo ele escreve a data no formato ano;mes;dia;hora;minuto
porem qiando a data for 2008 10 25 12 30 ele vai escrever 200810251230
porem qiando a data for 2008 08 05 09 15 ele vai
escrever 200885915
eu preciso que ele escreve o zero a esquerda dos numeros menores que 10
tem algum tipo de escale que possa ser usado ?