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

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

Re: [shell-script] Re: Substituindo texto em arquivos


From: Julio C. Neves
Subject: Re: [shell-script] Re: Substituindo texto em arquivos
Date: Sat, 15 Dec 2007 21:40:34 -0200

Fala Olivier,
na msg anterior eu disse:
"onde o s significa substitui, o caractere seguinte (no caso a barra (/) mas
poderia ter usado qq outro) é um separador".

Então, vc poderia usar qq caracter, pois o sed intrpreta o caracter seguinte
ao "s" como o separador.

Repare o cmd abaixo:
$ echo /usr/local/bin | sed 's#/#-#g'
-usr-local-bin
Nele eu usei a tralha (#) como separador para trocar as barras (/) por
hifens (-), mas poderia ter usado qq outra caractere como nos exemplos a
seguir:
$ echo /usr/local/bin | sed 's;/;-;g'
-usr-local-bin
$ echo /usr/local/bin | sed 's>/>->g'
-usr-local-bin
$ echo /usr/local/bin | sed 'sz/z-zg'
-usr-local-bin

onde usei respectivamente o ponto-e-vírgula, o maior que e finalmente a
letra z.

Abraços,
Julio


Em 15/12/07, olivier.voutat <address@hidden> escreveu:
>
>   Blz Júlio,
>
> mas indo mais longe na complexidade, se a string a ser substituída
> tiver / como contornar isso? Tentei rudimentarmente usar " ou duplicar
> os // mas nada feito.
>
> Pensando até mais longe, se eu quiser substituir um texto por um texto
> de duas linhas, eu uso \n para retorno de linha?
>
> -10 graus ainda não graças à Deus mas já estamos à ~-1 -2 graus. Pense
> que foi o maior fator que me impedia de voltar para cá. Odeio frio.
>
> Abraços,
> Olivier
>
> --- Em address@hidden <shell-script%40yahoogrupos.com.br>,
> "Julio C. Neves"
> <julio.neves@...> escreveu
> >
> > Fala Olivier,
> >
> > o melhor é usar o cmd sed, usando-o da seguinte forma:
> >
> > sed 's/#GETPASS_ASTERISKS 1/GETPASS_ASTERISKS 1/g' login.defs >
> /tmp/log.$$
> >
> > onde o s significa substitui, o caractere seguinte (no caso a barra
> (/) mas
> > poderia ter usado qq outro) é um separador, e o g no final significa
> que se
> > o texto ocorrer mais de uma vez em uma linha, ele fará a substituição em
> > todas as ocorrências.
> >
> > O sed é um cmd tão poderoso que é considerado outra linguagem e
> devido à sua
> > complexidade e amplitude, preferi não abordá-lo no Papo de Botequim, que
> > conforme vc me disse é o seu manual.
> >
> > Se vc procurar no histórico da lista verá inúmeros exemplos bem
> comentados.
> > O Tiago seguido de um monte de consoantes :) é quem mais conhece sed
> e awk
> > atualmente na nossa lista e ele sempre está pronto para ajudar a todos.
> >
> > Eu sou o Julio Neves e vc o Olivier nas neves... :). Já está abaixo
> dos 10
> > graus negativos por aí?
> >
> > Abraços,
> > Julio
> >
> >
> > Em 15/12/07, olivier.voutat <olivier.voutat@...> escreveu:
> > >
> > > Estava querendo substituir textos nos meus arquivos de
> configuração e
> > > pensei em usar o tr mas tr substitui caracteres.
> > >
> > > O que eu tentei:
> > >
> > > tr '#GETPASS_ASTERISKS 1' 'GETPASS_ASTERISKS 1' < login.defs >
> /tmp/log.$$
> > >
> > > Mas isso não dá certo, claro. Outra maneira de fazer?
> > >
> > > Olivier
> > >
> > >
> > >
> >
> >
> >
> > --
> > Abraços,
> > Julio
> > Feliz Natal
> > :wq
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>  
>



-- 
Abraços,
Julio
Feliz Natal
:wq


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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