hey, será que usar os retrovisores de sed não ajudaria?
s/\(giz.......\)18.00pc/\117.00pc/g mais exemplos com retrovisores em: http://aurelio.net/curso/sucesu/sucesu-seder-prompt.html#toc45 http://aurelio.net/curso/ccsl/ccsl2-er-prompt.html#toc14 hasta! jr. On 3/13/07, Bruno Gunter Fricke <[EMAIL PROTECTED]> wrote: > Se você quiser trocar por um ponto de verdade, precisa escapá-lo. Use o > "\". > > []'s > Gunter > > On Tue, 2007-03-13 at 18:09 +0000, Marcos Gattermeyer wrote: > > Realmente devo ter me expressado mal rsrs > > > > As duas formas funcionaram para a pesquisa so que na troca preenche > > com o . (ponto) > > > > s/giz.......18.00pc/giz.......17.00pc/g > > > > acha > > giz.verde.18.00pc > > > > troca por > > giz......17.00pc > > > > quando na realidade deveria ser > > giz.verde.17.00pc > > > > Obrigado > > > > --- Em [email protected], "Julio C. Neves" > > <[EMAIL PROTECTED]> escreveu > > > > > > Ufa, até que enfim vc se expressou. Fica difícil imaginar o que vc > > quer sem > > > nenhuma dica. Neste caso faça: > > > > > > giz.......18.00pc > > > > > > ou > > > > > > giz.\{7\}18.00pc > > > > > > Veja detalhes em www.aurelio.net > > > > > > Abraços, > > > Julio > > > :wq > > > > > > > > > Em 13/03/07, Marcos Gattermeyer <[EMAIL PROTECTED]> escreveu: > > > > > > > > Tentei o seu exemplo mas nao funcionou > > > > > > > > Na realidade quero pesquisar giz com 3 letras + 7 caracteres que > > > > podem ser q coisa nao necessariamente espacos em branco como > > rosa, > > > > azul, verde etc... e depois 18.00pc > > > > > > > > Acho que com uma mascara poderia ficar assim: > > > > > > > > giz???????18.00pc > > > > > > > > e substituir por > > > > > > > > giz???????17.00pc > > > > > > > > Onde se entende ??????? como coringa. > > > > > > > > Obrigado > > > > > > > > --- Em [email protected] <shell-script% > > 40yahoogrupos.com.br>, > > > > "Julio C. Neves" > > > > <julio.neves@> escreveu > > > > > > > > > > Se eu entendi, vc está pesquisando giz seguido de 4 espaços em > > > > branco, ou > > > > > seja, giz com 3 letras + 4 espaços = 7 caracteres. Se for isso > > > > faça: > > > > > > > > > > /giz 18.00pc/ # depois de giz coloquei 4 espaços > > > > > > > > > > ou > > > > > > > > > > /giz \{4\}18.00pc/ # depois de giz coloquei 1 espaço > > > > > > > > > > Abraços, > > > > > Julio > > > > > :wq > > > > > > > > > > > > > > > Em 13/03/07, Marcos Gattermeyer <mgatter@> escreveu: > > > > > > > > > > > > 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 [email protected]<shell-script% > > 40yahoogrupos.com.br><shell-script% > > > > 40yahoogrupos.com.br>, > > > > > > "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: [email protected]<shell-script% > > 40yahoogrupos.com.br> > > > > <shell-script% > > > > 40yahoogrupos.com.br><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 [email protected]<shell-script% > > 40yahoogrupos.com.br> > > > > <shell-script% > > > > 40yahoogrupos.com.br><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: [email protected]<shell-script% > > 40yahoogrupos.com.br> > > > > <shell-script% > > > > 40yahoogrupos.com.br><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] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > [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] > > > > --------------------------------------------------------------------- > 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 > > >
