[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: |
Wed, 13 Apr 2005 10:58:42 -0300 (ART) |
Oi Miranda,
> Aliás como você está obtendo
> data1 e data2
> lendo de arquivo ?
> Quem preenche esses arquivos ?
> Poderia preencher em Inglês ?
Então, eu tenho um script onde eu crio o arquivo
DataExecucao da seguinte forma:
date > DataExecucao
Depois eu crio um arquivo chamado DataHoje com a data
atual (date > DataHoje).
A data1 é lida do arquivo DataExecucao
e data2 é lida do arquivo DataHoje.
Como eu faria para preencher esses arquivos em inglês?
> Outra pergunta
> sua shell aceita o sinal >
> ao invés de -gt no if ?
Sim, meu shell não aceita o -gt, somente o >.
Obrigada, Beatriz
> On Tue, 2005-04-12 at 17:03, Beatriz Langiano wrote:
> > 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
__________________________________________________
Converse com seus amigos em tempo real com o Yahoo! Messenger
http://br.download.yahoo.com/messenger/