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

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

Re: Editar um arquivo de uma linha com SED


From: Marcos Gattermeyer
Subject: Re: Editar um arquivo de uma linha com SED
Date: Tue, 13 Mar 2007 13:53:22 -0000
User-agent: eGroups-EW/0.82

Julio, Bom dia

Tentei mas tambem nao deu certo,
Consegui resolver de outra forma mas ficou uma gambiarra

Estou estudando ER consultando alguns sites(verde) e tb seu livro
(parabens) mas estou cru ainda, acho que se conseguir pesquisar uma 
string com coringa dentro do dbf devo conseguir meu objetivo:

MEU DBF:

k Â&CODC
PRODUTOC
ICMSNTIPOCVALORN
100 teste 18.00pc 20.00 101 giz 18.00pc
1.00 102 lapis 18.00pc 102.00

Quero pesquisar "/giz[ ]{7}18.00pc/" (palavra giz com um coringa com 
tamanho de 7 caracter mais a palavra 18.00pc)

E trocar por "/giz[ ]{7}17.00pc/"

Voce pode me dizer como ficaria essa ER.

Obrigado.
Marcos 

--- Em address@hidden, "Julio C. Neves" 
<julio.neves@...> escreveu
>
> E que tal fazer:
> $ sed -e "s/ giz 18.00pc/ giz 17.00pc/g" dbf.
> 
> Repare que tem um branco antes de giz.
> 
> Abraços,
> Julio
> :wq
> 
> 
> Em 12/03/07, Bruno Gunter Fricke <gunter@...> escreveu:
> >
> >   Cara, faça uma expressão regular para dar a posição do 18.oo e 
então
> > altere se for um caso (nada como um bom e velho if). Estou sem 
tempo hoje
> > para escrever algo e testar.
> > Se até amanhã você não conseguir, eu vou ver se consigo fazer 
para você e
> > te envio.
> >
> > []'s
> > Gunter
> >
> > ----- Original Message -----
> > From: Marcos Gattermeyer
> > To: address@hidden <shell-script%
40yahoogrupos.com.br>
> > Sent: Monday, March 12, 2007 8:09 AM
> > Subject: [shell-script] Re: Editar um arquivo de uma linha com 
SED
> >
> > Entao Bruno,
> >
> > Dessa forma altero todos os ICMS de 18.00 para 17.00, Gostaria de
> > alterara somente o ICMS que estiver entre a palavra "giz" e a 
proxima
> > palavra "pc".
> >
> > De qualquer forma obrigado,
> >
> > se alguem tiver mais alguma dica agradeco ?
> >
> > --- Em address@hidden <shell-script%
40yahoogrupos.com.br>,
> > "Bruno Gunter Fricke"
> > <gunter@> escreveu
> > >
> > >
> > > Marcos, seria algo como:
> > >
> > > $ sed -e "s/$18.oo/$17.oo/g" dbf
> > >
> > >
> > > ----- Original Message -----
> > > From: Marcos Gattermeyer
> > > To: address@hidden <shell-script%
40yahoogrupos.com.br>
> > > Sent: Friday, March 09, 2007 2:17 PM
> > > Subject: [shell-script] Editar um arquivo de uma linha com SED
> > >
> > >
> > > Boa Tarde,
> > > A sequencia abaixo se trata de um arquivo DBF, com 5 campos
> > > COD
> > > PRODUTO
> > > ICMS
> > > TIPO
> > > VALOR
> > >
> > > k Â&CODC
> > > PRODUTOC
> > > ICMSNTIPOCVALORN
> > > 100 teste 18.00pc 20.00 101 giz 18.00pc
> > > 1.00 102 lapis 18.00pc 102.00
> > >
> > > Todo o DBF e considerado como uma unica linha, sendo assim 
gostaria de
> > > pesquisar e trocar somente a sequencia ICMS de "18.00" 
para "17.00"
> > > que vem apos a palavra "giz", e mantenha o resto intacto.
> > >
> > > tentei:
> > >
> > > sed ':a;s/^\([^giz]*,[^pc]\+\)18.00/\117.00/;ta' -i arquivo.dbf
> > >
> > > (peguei este exemplo na internet)
> > >
> > > Mas nao funcionou.
> > >
> > > Se alguem puder me ajudar, agradeço
> > >
> > >
> > >
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram 
removidas]
> > >
> >
> > [As partes desta mensagem que não continham texto foram 
removidas]
> >
> >  
> >
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




reply via email to

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