shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Shell ou Sed?


From: Fábio Batista
Subject: Re: [shell-script] Shell ou Sed?
Date: Wed, 11 May 2005 16:40:25 -0300

Exatamente!

Com -E. Como estava com preguiça de criar um arquivo no formato que vc
especificou, acabei nem testando.

Com egrep também funciona.

Uma boa prática que quem pede ajuda pode adotar é sempre fornecer um
exemplo "copyandpasteable", principalmente se o arquivo de origem for
uma coisa meio esquisita como esse.

-- 
Fábio David Batista
address@hidden
http://nerd-o-matic.blogspot.com

On 5/11/05, Miranda <address@hidden> wrote:
> tente com -E
> 
> On Wed, 2005-05-11 at 14:56, Emerson Domingues Souto wrote:
> > > ----- Original Message -----
> > > From: "Fábio Batista" <address@hidden>
> > > To: <address@hidden>
> > > Sent: Wednesday, May 11, 2005 10:18 AM
> > > Subject: Re: [shell-script] Shell ou Sed?
> > >
> >
> >
> > /*
> > > Tente algo como:
> > >
> > > grep -e "^.{64}sl" arq.txt > arq_SL.txt
> > > grep -e "^.{64}sb" arq.txt > arq_SB.txt
> > */
> >
> > Tem certeza q a sintaxe é essa ?
> > eu fiz o teste e não funcionou ... o q eu fiz de errado ?
> >
> >
> > > --
> > > Fábio David Batista
> > > address@hidden
> > > http://nerd-o-matic.blogspot.com
> >
> > > On 5/10/05, Lourival <address@hidden> wrote:
> > > >  Boa tarde a todos,
> > > >  tenho um arquivo tipo arq.txt com vários registros (o arquivo pode ter
> > > >  um número arbitrário de registros) de 150 bytes cada registro e preciso
> > > >  selecionar registros baseados no conteudo das posições 65 e 66.
> > > >  Se nestas posições estiverem presentes a string "sl", enviar este
> > > >  registro para outro arquivo, por exemplo, arq_SL.txt; se nas posições
> > 65
> > > >  e 66 estiverem presentes a string "sb" enviar este registro para outro
> > > >  arquivo, por exemplo arq_SB.txt .
> > > >  A forma mais óbvia para mim de se fazer isto é com um "case".
> > > >
> > > >  Leio cada linha em uma variável $LINHA e em outra variavel ($ID)
> > coloco:
> > > >  ID = echo "grep arq.txt| cut -c65-66"
> > > >  com o "case":
> > > >  case $ID in
> > > >      sl) echo $LINHA >> arq_SL.txt
> > > >      sb) echo $LINHA >> arq_SB.txt
> > > >
> > > >  e assim por diante!
> > > >  A minha dúvida é a seguinte: esta é a forma mais rápida de se fazer
> > isto?
> > > >  É possível fazer o mesmo com "sed" ou "awk" de forma mais rápida?
> > > >  (Acho que não é OFF-TOPIC pois isto tudo (shell, sed e awk) está junto
> > > >  no livro do Julio Cezar :-)))  )
> > > >
> > >  Desde já agradeço e aguardo qualquer colaboração
> > >  Forte abraço a todos
> > >  Lourival


reply via email to

[Prev in Thread] Current Thread [Next in Thread]