hey,

(meus 2 centavos:)
Você precisa do dia anterior? já tentou usar o próprio `date`?

$ date -d"-1 day" +%d

ou

$ date -d"yesterday" +%d

Ah sim, a versão do date aqui (na verdade, pacote GNU coreutils) é a 6.4.

Sei que esse não é o foco principal do seu problema (que inclusive eu
ainda não entendi completamente ;), mas talvez te ajude um pouco.

hasta!

jr.

On 2/20/07, rodrigobsi <[EMAIL PROTECTED]> wrote:
> Abaixo o shell que eu utilizo para executar os programas.
> Antes de executar o prorama há uma função pra pegar a data do dia
> anterior que eu utilizo no campo data do programa.
> Os parametros que eu utilizo para executar o programa são os mesmo
> para todos. Estão comentados abaixo.
>
> #FUNCAO PARA OBTER O DIA ANTERIOR
> fn_data_anterior()
> {
>         DIA=$D
>         MES=$M
>         ANO=$A
>
>         # Dado DIA, MES e ANO numericos, obtem a data do dia anterior
>         DIA=`expr $DIA - 1`
>         if [ $DIA -eq 0 ]; then
>                 MES=`expr $MES - 1`
>                 if [ $MES -eq 0 ]; then
>                         MES=12
>                         ANO=`expr $ANO - 1`
>                 fi
>                 DIA=`cal $MES $ANO`
>                 DIA=`echo $DIA | awk '{ print $NF }'`
>         fi
> }
>
> ano=`date +%y`;
> mes=`date +%m`;
> let dia=10\#`date +%d`;
> if (( $dia<10 ));
>   then
>     j=0$dia;
> else
>     j=$dia;
> fi
> dia=$j;
> j="";
>
> D=$dia
> M=$mes
> A=$ano
> fn_data_anterior
>
> run PROGRAMA1 << F #Executa o programa PROGRAMA1 e redireciona os
> parametros abaixo citados.#
> i #Aciona a opção Informar do programa
> $DIA$MES$ANO # Preenche o campo data de referencia
> p #Aciona a opção Processar do programa
> l #Aciona a opção Listar do programa
> s #Aciona a opção Salvar do programa
> f #Aciona a opção Fim do programa
>
> run PROGRAMA3 << F #Executa o programa PROGRAMA3 e redireciona os
> parametros abaixo citados.#
> i #Aciona a opção Informar do programa
> $DIA$MES$ANO # Preenche o campo data de referencia
> p #Aciona a opção Processar do programa
> l #Aciona a opção Listar do programa
> s #Aciona a opção Salvar do programa
> f #Aciona a opção Fim do programa
>
> run PROGRAMA3 << F #Executa o programa PROGRAMA3 e redireciona os
> parametros abaixo citados.#
> i #Aciona a opção Informar do programa
> $DIA$MES$ANO # Preenche o campo data de referencia
> p #Aciona a opção Processar do programa
> l #Aciona a opção Listar do programa
> s #Aciona a opção Salvar do programa
> f #Aciona a opção Fim do programa
>
> São mais de 90 programas todos os dias, por isso preciso criar um
> arquivo de parametros e fazer com que esse shell que executa os
> programas pegue os parametros desse único arquivo. Mesma coisa para
> a função data.
>
> OBrigado
> Att.
> Rodrigo
>
> --- Em shell-script@yahoogrupos.com.br, "Tiago Barcellos Peczenyj"
> <[EMAIL PROTECTED]> escreveu
> >
> > Dê exemplos ;-)
> >
> > On 2/20/07, Rodrigo Santos Vieira <[EMAIL PROTECTED]> wrote:
> > >
> > >   Bom dia pessoal.
> > > Tenho vários rotinas que iram utilizar os mesmo parâmetros, e
> tambem um
> > > shell que calcula a data do dia anterior.
> > > Como faço um shell para utilizar os parametros de um arquivo
> externo e
> > > tambem para utilizar o valor da data que será calculado em um
> outro shell?
> > >
> > > Att.
> > > Rodrigo
> > >
> > > [As partes desta mensagem que não continham texto foram
> removidas]
> > >
> > >
> > >
> >
> >
> >
> > --
> > Tiago B Peczenyj
> > Linux User #405772
> >
> > # cd /pub
> > # more beer
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>

Responder a