[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Mais datas
From: |
Beatriz Langiano |
Subject: |
Re: [shell-script] Mais datas |
Date: |
Tue, 12 Apr 2005 14:03:00 -0300 (ART) |
Oi Miranda,
Fiz meu script com as suas dicas, e ele ficou assim:
---------------------------------------------
#!/bin/bash
exec 3< DataExecucao
read -u3 data1
exec 3< DataHoje
read -u3 data2
echo "Testando a data de execucao"
data1S=`date +%s --date="$data1"`
echo "$data1S"
data2S=`date +%s --date="$data2"`
echo "$data2S"
if [ `expr $data1S - $data2S` > 86400 ]
then
echo "+ de 24 horas"
else echo "nao + de 24 horas"
fi
---------------------------------------------
Fiz um teste onde data1 e data2 são iguais, mas ele
está gerando esse erro:
---------------------------------------------
Testando a data de execucao
date: data inválida `Ter Abr 12 10:42:36 BRT 2005'
date: data inválida `Ter Abr 12 10:42:36 BRT 2005'
+ de 24 horas
(se as datas são iguais, a saída deveria ser a do
comando else)
---------------------------------------------
Você saberia o que está errado?
Obrigada, Beatriz
--- Miranda <address@hidden> wrote:
>
> Estou tendo dificuldades com a data em portugues
> A idéia basica é : ( veja )
>
> echo $data1
> Fri Apr 8 15:10:28 BRT 2005
> [miranda@guitar Video]$ echo $data2
> Thu Apr 7 15:10:28 BRT 2005
>
> data2 é anterior a data1 em exatamente 24 horas
>
> [miranda@guitar Video]$ data1S=`date +%s
> --date="$data1"`
> [miranda@guitar Video]$ echo $data1S
> 1112983828
> [miranda@guitar Video]$ data2S=`date +%s
> --date="$data2"`
> [miranda@guitar Video]$ echo $data2S
> 1112897428
>
> if [ `expr $data1S - $data2S` -gt 86400 ]
> then
> echo "+ de 24 horas"
> else
> echo "nao + de 24 horas"
> fi
> nao + de 24 horas
> [miranda@guitar Video]$
>
> On Fri, 2005-04-08 at 12:32, Beatriz Langiano wrote:
> > Olá,
> >
> > Tenho um script que precisa comparar a data atual
> com
> > uma data lida em um arquivo para ver se a
> diferenca
> > entre a data atual e a data no arquivo é maior que
> > 24h.
> >
> > (A data do arquivo está nesse formato:
> > data1 = Qui Abr 8 15:10:28 BRT 2005)
> >
> > Por exemplo:
> >
> > #!/bin/bash
> >
> > exec 3< Arquivo
> > read -u3 data1
> >
> >
> > If "(DataHoje - data1) > 24 horas"
> > then ....
> >
> >
> > Alguém sabe como fazer isso?
> >
> > Obrigada, Beatriz
> >
Beatriz Langiano
Mestrado em Informática
Universidade Federal do Paraná - Brasil
Yahoo! Acesso Grátis - Internet rápida e grátis.
Instale o discador agora! http://br.acesso.yahoo.com/