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

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

Re: RES: [shell-script] Alterar campo dentro do arquivo


From: lferreir1
Subject: Re: RES: [shell-script] Alterar campo dentro do arquivo
Date: Thu, 01 Jul 2004 18:09:42 -0000
User-agent: eGroups-EW/0.82

Aurélio... Mil desculpas pelo sed... Acho que estava com a cabeça na 
lua...

Comigo não funcionou com a sua dica.
Estarei resumindo a realidade do problema. Salvei um arquivo com um 
único registro do original para os testes. Vamos lá!:

>cat FSNS010025jul.txt
1051808015817120040630083167SUPERLIVRO LTDA.                   RUA 
RIACHUELO, 1*

>cut -c15-22 FSNS010025jul.txt
20040630

>sed 's/^\(.\{15\}\)20040630/\199999999/' FSNS010025jul.txt
1051808015817120040630083167SUPERLIVRO LTDA.                   RUA 
RIACHUELO, 1*

Note que na coluna 15 até 22 ainda permanece a data 20040630

Onde eu errei?

Obs. O sed do meu S.O., Unix-Solaris v.7, não tem a opção -r

--- Em address@hidden, Aurelio Marinho Jargas 
<aureliojargas@y...> escreveu
> oi luiz,
> 
> --- lferreir1 <lferreir@e...> escreveu: 
> 
> 
> > Não posso alterar via editor, ou pelo sed, pois o meu receio é 
que 
> > possa haver o mesmo numeral em outro campo.
> 
> ca-ca-ca-como não pode usar o sed? BLASFÊMIA!!!  :)
> 
> 
> > Como eu sei que no campo 55 até 60 somente existe 010704, quero 
> > alterar para 300604. Só agora eu lembrei que este arquivo contém 
> > header e trailler.
> 
>      sed 's/^\(.\{54\}\)010704/\1300604/'
> ou
>      sed -r 's/^(.{54})010704/\1300604/'
> 
> o .{54} representa os primeiros 54 chars da linha, que estao
> dentro de um grupo () e são referenciados depois com o \1, então
> não são alterados. depois segue o numero antigo trocado pelo
> novo.
> 
> era wilson?
> 
> falou
> 
> =====
> -- 
> Aurelio Marinho Jargas, Curitiba, Conectiva
> A odisseia verde no FISL http://aurelio.net/curso/fisl
> 
> 
______________________________________________________________________
> 
> Participe da pesquisa global sobre o Yahoo! Mail: 
> http://br.surveys.yahoo.com/global_mail_survey_br


reply via email to

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