Ir direto para busca.
sed-br · Lista sobre SED e Expressões Regulares

Informações sobre o grupo

? Você já é um associado? Entre no Yahoo!

Dicas

Você sabia...
Você pode ordenar suas mensagens por data? Basta clicar no link da coluna data. Suas preferências serão lembradas para que você não precise fazer isso novamente sempre que retornar.

Mensagens

  Ajuda
Avançado
mensagens 4538 - 4570 de 5040   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
mensagens 4538 - 4570 de 5040   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
mensagens: Exibir resumo de mensagens Classificar por data ^  
#4538 De: Julio Quierati via LinkedIn <julio.quierati@...>
Data: Sáb, 2 de Out de 2010 6:22 am
Assunto: Convite para se conectar no LinkedIn
j_quierati
Enviar e-mail Enviar e-mail
 
LinkedIn
------------Julio Quierati solicitou sua adição como uma conexão no LinkedIn:
------------------------------------------

Nilson,

Eu gostaria de adicioná-lo à minha rede profissional no LinkedIn.
-Julio

Aceitar convite de Julio Quierati
http://www.linkedin.com/e/kb8gba-ges3izyv-15/VNr5lpxOnGUPOVWHhxUYf2ymeg61XJ3mElz\
QW-y/blk/I2376376410_2/1BpC5vrmRLoRZcjkkZt5YCpnlOt3RApnhMpmdzgmhxrSNBszYOnP0Nd3o\
TcPoTcP99bSlJl4FQbntebP0Rc30Qe3kPdP4LrCBxbOYWrSlI/EML_comm_afe/

Visualizar convite de Julio Quierati
http://www.linkedin.com/e/kb8gba-ges3izyv-15/VNr5lpxOnGUPOVWHhxUYf2ymeg61XJ3mElz\
QW-y/blk/I2376376410_2/39vc34QdzsPdzsPcAALqnpPbOYWrSlI/svi/



--
(c) 2010, LinkedIn Corporation

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

#4541 De: Arkanon <arkanon@...>
Data: Qua, 20 de Out de 2010 7:17 am
Assunto: Re: Remover tudo na linha exceto as ocorrencias de uma string
xarkanon
Enviar e-mail Enviar e-mail
 
Apenas corrigindo:

Em 20 de outubro de 2010 05:12, Arkanon <arkanon@...> escreveu:

Entao eu gostaria de processar a linha:
>
>    pe!robatata-pe!r1   uva mamao pe!ra0jacape!r3
>
> e obter
>
>    pe!ro,pe!r1,pe!ra,pe!r3
>

--
(o_   ------------------     __o
//\   arkanon@...   _`\<,
V_/_  --- www.lsd.org.br  (_)/(_)
---------------------------------


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

#4542 De: Jan FRS <janfrs3@...>
Data: Qua, 20 de Out de 2010 2:35 pm
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
janfrs3
Enviar e-mail Enviar e-mail
 
$ cat linha.1
pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3

# uma ideia

$ sed -e 's/\(pe!r.\)/\n\1/g' linha.1 | sed -e 's/\(pe!r.\).*$/\1,/gm' | sed
-ne 'H;${x;s/\n//gp}'

pe!ro,pe!r1,pe!ra,pe!r3,

# muito bizarro fazer isso, ficaria muito mais fácil em AWK

# outra ideia, mais simples

$ sed -e 's/\(pe!r.\)/#\1#/g' linha.1 | sed -e 's/#\(pe!r.\)#[^#]*/\1,/g'

pe!ro,pe!r1,pe!ra,pe!r3,

# meio bizarra também, veja a saida de cada pipe pra vc sacar

# se fosse com o superSed daria para negar um grupo usando negative
lookahead ai
# ficaria mais simples, vai tentando ai, mais ideias surgirão...


Em 20 de outubro de 2010 04:17, Arkanon <arkanon@...> escreveu:

>
>
> Apenas corrigindo:
>
> Em 20 de outubro de 2010 05:12, Arkanon
<arkanon@...<arkanon%40lsd.org.br>>
> escreveu:
>
> Entao eu gostaria de processar a linha:
> >
> > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
> >
> > e obter
> >
> > pe!ro,pe!r1,pe!ra,pe!r3
> >
>
> --
> (o_ ------------------ __o
> //\ arkanon@... <arkanon%40lsd.org.br> _`\<,
> V_/_ --- www.lsd.org.br (_)/(_)
> ---------------------------------
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>


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

#4543 De: Ivan lopes <lopesivan.del@...>
Data: Qua, 20 de Out de 2010 4:16 pm
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
ivanczar78
Enviar e-mail Enviar e-mail
 
Sempre gostei mais do sed q o awk ... então faria assim ...
echo 'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3' \
| sed '/pe!../x; g; s//\n&\n=/g; s/=[^\n]*//g' \
| sort | uniq

sed
'/pe!../x;
g;
s//\n&\n=/g;
s/=[^\n]*//g'


2010/10/20 Jan FRS <janfrs3@...>

>
>
> $ cat linha.1
>
> pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
>
> # uma ideia
>
> $ sed -e 's/\(pe!r.\)/\n\1/g' linha.1 | sed -e 's/\(pe!r.\).*$/\1,/gm' |
> sed
> -ne 'H;${x;s/\n//gp}'
>
> pe!ro,pe!r1,pe!ra,pe!r3,
>
> # muito bizarro fazer isso, ficaria muito mais fácil em AWK
>
> # outra ideia, mais simples
>
> $ sed -e 's/\(pe!r.\)/#\1#/g' linha.1 | sed -e 's/#\(pe!r.\)#[^#]*/\1,/g'
>
> pe!ro,pe!r1,pe!ra,pe!r3,
>
> # meio bizarra também, veja a saida de cada pipe pra vc sacar
>
> # se fosse com o superSed daria para negar um grupo usando negative
> lookahead ai
> # ficaria mais simples, vai tentando ai, mais ideias surgirão...
>
> Em 20 de outubro de 2010 04:17, Arkanon
<arkanon@...<arkanon%40lsd.org.br>>
> escreveu:
>
> >
> >
> > Apenas corrigindo:
> >
> > Em 20 de outubro de 2010 05:12, Arkanon
<arkanon@...<arkanon%40lsd.org.br>
> <arkanon%40lsd.org.br>>
>
> > escreveu:
> >
> > Entao eu gostaria de processar a linha:
> > >
> > > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
> > >
> > > e obter
> > >
> > > pe!ro,pe!r1,pe!ra,pe!r3
> > >
> >
> > --
> > (o_ ------------------ __o
> > //\ arkanon@... <arkanon%40lsd.org.br> <arkanon%40lsd.org.br>
> _`\<,
>
> > V_/_ --- www.lsd.org.br (_)/(_)
> > ---------------------------------
> >
> > [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]

#4544 De: Jan FRS <janfrs3@...>
Data: Qua, 20 de Out de 2010 5:26 pm
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
janfrs3
Enviar e-mail Enviar e-mail
 
Aproveitando a Idéia do ivan refiz a minha linha agora sem pipe; (tivemos
praticamente a mesma idéia Ivan)

$ sed -e 's/\(pe!r.\)/#\1#/g;s/#\(pe!r.\)#[^#]*/\1,/g' linhas.1

pe!ro,pe!r1,pe!ra,pe!r3,



Em 20 de outubro de 2010 13:16, Ivan lopes <lopesivan.del@...>escreveu:

> Sempre gostei mais do sed q o awk ... então faria assim ...
> echo 'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3' \
> | sed '/pe!../x; g; s//\n&\n=/g; s/=[^\n]*//g' \
> | sort | uniq
>
> sed
> '/pe!../x;
> g;
> s//\n&\n=/g;
> s/=[^\n]*//g'
>
>
> 2010/10/20 Jan FRS <janfrs3@...>
>
> >
> >
> > $ cat linha.1
> >
> > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
> >
> > # uma ideia
> >
> > $ sed -e 's/\(pe!r.\)/\n\1/g' linha.1 | sed -e 's/\(pe!r.\).*$/\1,/gm' |
> > sed
> > -ne 'H;${x;s/\n//gp}'
> >
> > pe!ro,pe!r1,pe!ra,pe!r3,
> >
> > # muito bizarro fazer isso, ficaria muito mais fácil em AWK
> >
> > # outra ideia, mais simples
> >
> > $ sed -e 's/\(pe!r.\)/#\1#/g' linha.1 | sed -e 's/#\(pe!r.\)#[^#]*/\1,/g'
> >
> > pe!ro,pe!r1,pe!ra,pe!r3,
> >
> > # meio bizarra também, veja a saida de cada pipe pra vc sacar
> >
> > # se fosse com o superSed daria para negar um grupo usando negative
> > lookahead ai
> > # ficaria mais simples, vai tentando ai, mais ideias surgirão...
> >
> > Em 20 de outubro de 2010 04:17, Arkanon <arkanon@...<arkanon%
> 40lsd.org.br>>
> > escreveu:
> >
> > >
> > >
> > > Apenas corrigindo:
> > >
> > > Em 20 de outubro de 2010 05:12, Arkanon <arkanon@...<arkanon%
> 40lsd.org.br>
> > <arkanon%40lsd.org.br>>
> >
> > > escreveu:
> > >
> > > Entao eu gostaria de processar a linha:
> > > >
> > > > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
> > > >
> > > > e obter
> > > >
> > > > pe!ro,pe!r1,pe!ra,pe!r3
> > > >
> > >
> > > --
> > > (o_ ------------------ __o
> > > //\ arkanon@... <arkanon%40lsd.org.br> <arkanon%40lsd.org.br>
> > _`\<,
> >
> > > V_/_ --- www.lsd.org.br (_)/(_)
> > > ---------------------------------
> > >
> > > [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]
>
>
>
> ------------------------------------
>
> --
> para sair da lista: sed-br-unsubscribe@... do Yahoo!
> Grupos
>
>
>


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

#4545 De: Jan FRS <janfrs3@...>
Data: Qua, 20 de Out de 2010 5:29 pm
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
janfrs3
Enviar e-mail Enviar e-mail
 
se retirar o x; g; , ainda produz a mesma saida

$ sed -e '/pe!../s//\n&\n=/g; s/=[^\n]*//g' linhas.1

pe!ro

pe!r1

pe!ra

pe!r3


Em 20 de outubro de 2010 14:26, Jan FRS <janfrs3@...> escreveu:

> Aproveitando a Idéia do ivan refiz a minha linha agora sem pipe; (tivemos
> praticamente a mesma idéia Ivan)
>
> $ sed -e 's/\(pe!r.\)/#\1#/g;s/#\(pe!r.\)#[^#]*/\1,/g' linhas.1
>
>
> pe!ro,pe!r1,pe!ra,pe!r3,
>
>
>
> Em 20 de outubro de 2010 13:16, Ivan lopes <lopesivan.del@...>escreveu:
>
> Sempre gostei mais do sed q o awk ... então faria assim ...
>> echo 'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3' \
>> | sed '/pe!../x; g; s//\n&\n=/g; s/=[^\n]*//g' \
>> | sort | uniq
>>
>> sed
>> '/pe!../x;
>> g;
>> s//\n&\n=/g;
>> s/=[^\n]*//g'
>>
>>
>> 2010/10/20 Jan FRS <janfrs3@...>
>>
>> >
>> >
>> > $ cat linha.1
>> >
>> > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
>> >
>> > # uma ideia
>> >
>> > $ sed -e 's/\(pe!r.\)/\n\1/g' linha.1 | sed -e 's/\(pe!r.\).*$/\1,/gm' |
>> > sed
>> > -ne 'H;${x;s/\n//gp}'
>> >
>> > pe!ro,pe!r1,pe!ra,pe!r3,
>> >
>> > # muito bizarro fazer isso, ficaria muito mais fácil em AWK
>> >
>> > # outra ideia, mais simples
>> >
>> > $ sed -e 's/\(pe!r.\)/#\1#/g' linha.1 | sed -e
>> 's/#\(pe!r.\)#[^#]*/\1,/g'
>> >
>> > pe!ro,pe!r1,pe!ra,pe!r3,
>> >
>> > # meio bizarra também, veja a saida de cada pipe pra vc sacar
>> >
>> > # se fosse com o superSed daria para negar um grupo usando negative
>> > lookahead ai
>> > # ficaria mais simples, vai tentando ai, mais ideias surgirão...
>> >
>> > Em 20 de outubro de 2010 04:17, Arkanon <arkanon@...<arkanon%
>> 40lsd.org.br>>
>> > escreveu:
>> >
>> > >
>> > >
>> > > Apenas corrigindo:
>> > >
>> > > Em 20 de outubro de 2010 05:12, Arkanon <arkanon@...<arkanon%
>> 40lsd.org.br>
>> > <arkanon%40lsd.org.br>>
>> >
>> > > escreveu:
>> > >
>> > > Entao eu gostaria de processar a linha:
>> > > >
>> > > > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
>> > > >
>> > > > e obter
>> > > >
>> > > > pe!ro,pe!r1,pe!ra,pe!r3
>> > > >
>> > >
>> > > --
>> > > (o_ ------------------ __o
>> > > //\ arkanon@... <arkanon%40lsd.org.br> <arkanon%40lsd.org.br>
>> > _`\<,
>> >
>> > > V_/_ --- www.lsd.org.br (_)/(_)
>> > > ---------------------------------
>> > >
>> > > [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]
>>
>>
>>
>> ------------------------------------
>>
>> --
>> para sair da lista: sed-br-unsubscribe@... do Yahoo!
>> Grupos
>>
>>
>>
>


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

#4546 De: "Rodrigo Pace de Barros" <rodrigo.pace.barros@...>
Data: Qua, 20 de Out de 2010 6:33 pm
Assunto: Isolar endereços IP na string
rodrigo.pace
Enviar e-mail Enviar e-mail
 
Oi pessoal.



                 Tenho a seguinte string pra tratar:



===

Oct hh yy:yy:yy xxxxx xxxxx: NetScreen device_id=srvfw01
[Root]system-critical-00033: Src IP session limit! From 172.172.0.172:13711
to 200.200.200.173:53, proto UDP (zone Trust, int ethernet1). Occurred 9
times. (2010-10-20 16:29:28)

===



                 Como faço pra extrair apenas os 2 endereços IP dela pra que
eu fique com:



===

172.172.0.172:13711 ; 200.200.200.173:53

===



                 Obrigado!





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

#4547 De: Marcelo Zeri <marcelozeri@...>
Data: Qua, 20 de Out de 2010 10:38 pm
Assunto: Re: Isolar endereços IP na string
lmzeri
Enviar e-mail Enviar e-mail
 
Rodrigo,
Eu coloquei a sua string num arquivo ocupando uma linha só. Assim, os
seguintes comandos resolvem o seu problema:

Primeiro coloque uns marcadores em torno do IP, nesse caso #. Vai ficar #
172.172.0.172:13711#.
1,$s/\([0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}:[0-9]\{1,10\}\)/#\\
1#/g

Depois apague tudo do começo da linha até o primeiro marcador. O sed não
aceita o intervalo não-guloso (tipo {-1,10}), o que funciona no vim, por
isso especifiquei exatamente o número de caracteres até o primeiro # (nesse
caso, 113). Talvez você precise ajustar isso.
1,$s/^.\{1,113\}#//g

Coloque um ; separando os IPs
1,$s/# to #/ ; /g

Apague tudo do último marcador até o fim da linha
1,$s/#.*$//g

Agora é só colocar tudo isso num arquivo e rodar sed -f, etc.

Abraço,

--
Marcelo


2010/10/20 Rodrigo Pace de Barros <rodrigo.pace.barros@...>

>
>
> Oi pessoal.
>
> Tenho a seguinte string pra tratar:
>
> ===
>
> Oct hh yy:yy:yy xxxxx xxxxx: NetScreen device_id=srvfw01
> [Root]system-critical-00033: Src IP session limit! From
> 172.172.0.172:13711
> to 200.200.200.173:53, proto UDP (zone Trust, int ethernet1). Occurred 9
> times. (2010-10-20 16:29:28)
>
> ===
>
> Como faço pra extrair apenas os 2 endereços IP dela pra que
> eu fique com:
>
> ===
>
> 172.172.0.172:13711 ; 200.200.200.173:53
>
> ===
>
> Obrigado!
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>


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

#4548 De: jimmy <jimmy.tty@...>
Data: Qui, 21 de Out de 2010 12:03 am
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
ronaldo_tgz
Enviar e-mail Enviar e-mail
 
Tem  como resolver  isso  num único  script sed  marcando  o padrão  com
caracteres de controle,  por exemplo, e fazendo a  substituição com base
neles:

   $ sed 's/pe!r./\r&\f/g;s/^[^\r]*//;s/\f[^\r]\+\r/,/g;s/\f[^\r]*$//' <<<
'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3'

- 's/pe!r./\r&\f/g' transforma o pattern space em:

   \rpe!ro\fbatata-\rpe!r1\f uva mamao \rpe!ra0\fjaca\rpe!r3\r

- 's/^[^\r]*//' remove tudo que não interessa no começo da linha

- 's/\f[^\r]\+\r/,/g' insere as vírgulas entre os padrões encontrados

- 's/\f[^\r]*$//' remove tudo que não interessa no fim da linha

e acaba  sendo apenas uma adaptação  da técnica para se  emular um "grep
-o".


On Wed, Oct 20, 2010 at 02:29:14PM -0300, Jan FRS wrote:
> se retirar o x; g; , ainda produz a mesma saida
>
> $ sed -e '/pe!../s//\n&\n=/g; s/=[^\n]*//g' linhas.1
>
> pe!ro
>
> pe!r1
>
> pe!ra
>
> pe!r3
>
>
> Em 20 de outubro de 2010 14:26, Jan FRS <janfrs3@...> escreveu:
>
> > Aproveitando a Idéia do ivan refiz a minha linha agora sem pipe; (tivemos
> > praticamente a mesma idéia Ivan)
> >
> > $ sed -e 's/\(pe!r.\)/#\1#/g;s/#\(pe!r.\)#[^#]*/\1,/g' linhas.1
> >
> >
> > pe!ro,pe!r1,pe!ra,pe!r3,
> >
> >
> >
> > Em 20 de outubro de 2010 13:16, Ivan lopes
<lopesivan.del@...>escreveu:
> >
> > Sempre gostei mais do sed q o awk ... então faria assim ...
> >> echo 'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3' \
> >> | sed '/pe!../x; g; s//\n&\n=/g; s/=[^\n]*//g' \
> >> | sort | uniq
> >>
> >> sed
> >> '/pe!../x;
> >> g;
> >> s//\n&\n=/g;
> >> s/=[^\n]*//g'
> >>
> >>
> >> 2010/10/20 Jan FRS <janfrs3@...>
> >>
> >> >
> >> >
> >> > $ cat linha.1
> >> >
> >> > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
> >> >
> >> > # uma ideia
> >> >
> >> > $ sed -e 's/\(pe!r.\)/\n\1/g' linha.1 | sed -e 's/\(pe!r.\).*$/\1,/gm' |
> >> > sed
> >> > -ne 'H;${x;s/\n//gp}'
> >> >
> >> > pe!ro,pe!r1,pe!ra,pe!r3,
> >> >
> >> > # muito bizarro fazer isso, ficaria muito mais fácil em AWK
> >> >
> >> > # outra ideia, mais simples
> >> >
> >> > $ sed -e 's/\(pe!r.\)/#\1#/g' linha.1 | sed -e
> >> 's/#\(pe!r.\)#[^#]*/\1,/g'
> >> >
> >> > pe!ro,pe!r1,pe!ra,pe!r3,
> >> >
> >> > # meio bizarra também, veja a saida de cada pipe pra vc sacar
> >> >
> >> > # se fosse com o superSed daria para negar um grupo usando negative
> >> > lookahead ai
> >> > # ficaria mais simples, vai tentando ai, mais ideias surgirão...
> >> >
> >> > Em 20 de outubro de 2010 04:17, Arkanon <arkanon@...<arkanon%
> >> 40lsd.org.br>>
> >> > escreveu:
> >> >
> >> > >
> >> > >
> >> > > Apenas corrigindo:
> >> > >
> >> > > Em 20 de outubro de 2010 05:12, Arkanon <arkanon@...<arkanon%
> >> 40lsd.org.br>
> >> > <arkanon%40lsd.org.br>>
> >> >
> >> > > escreveu:
> >> > >
> >> > > Entao eu gostaria de processar a linha:
> >> > > >
> >> > > > pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3
> >> > > >
> >> > > > e obter
> >> > > >
> >> > > > pe!ro,pe!r1,pe!ra,pe!r3
> >> > > >
> >> > >
> >> > > --
> >> > > (o_ ------------------ __o
> >> > > //\ arkanon@... <arkanon%40lsd.org.br> <arkanon%40lsd.org.br>
> >> > _`\<,
> >> >
> >> > > V_/_ --- www.lsd.org.br (_)/(_)
> >> > > ---------------------------------

--
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------

#4549 De: Arkanon <arkanon@...>
Data: Qui, 21 de Out de 2010 12:55 am
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
xarkanon
Enviar e-mail Enviar e-mail
 
Em 20 de outubro de 2010 22:03, jimmy <jimmy.tty@...> escreveu:

>  Tem como resolver isso num único script sed marcando o padrão com
> caracteres de controle, por exemplo, e fazendo a substituição com base
> neles:
>
> $ sed 's/pe!r./\r&\f/g;s/^[^\r]*//;s/\f[^\r]\+\r/,/g;s/\f[^\r]*$//' <<<
> 'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3'
>
> - 's/pe!r./\r&\f/g' transforma o pattern space em:
>
> \rpe!ro\fbatata-\rpe!r1\f uva mamao \rpe!ra0\fjaca\rpe!r3\r
>
> - 's/^[^\r]*//' remove tudo que não interessa no começo da linha
>
> - 's/\f[^\r]\+\r/,/g' insere as vírgulas entre os padrões encontrados
>
> - 's/\f[^\r]*$//' remove tudo que não interessa no fim da linha
>
> e acaba sendo apenas uma adaptação da técnica para se emular um "grep
> -o".
>
Perfeito!

Eu estava aqui quebrando a cabeca porque as dicas do Jan e do Ivan
funcionaram a principio, mas quando alterei o padrao da linha para algo com
uma string qualquer no inicio diferente do padrao (pe!r.), essa string nao
parava de encher o saco:

sed -r ' /pe!r./s//\n&\n=/g; s/=[^\n]*//g; s/(\n(\n)|\n($))/\2/g; ' <<<
'oipe!robatata-pe!r1 uva mamao pe!ra0jacape!r3txau'

oi
pe!ro
pe!r1
pe!ra
pe!r3

Mas a sua dica funcionou:

sed -r ' s/pe!r./\r&\f/g; s/^[^\r]*//; s/\f[^\r]+\r/\n/g; s/\f[^\r]*$//; '
<<< 'oipe!robatata-pe!r1 uva mamao pe!ra0jacape!r3txau'

pe!ro
pe!r1
pe!ra
pe!r3

E agora foi so adaptar para o objetivo inicial: identificar numa quantidade
qualquer de arquivos html, com uma quantidade qualquer de linhas com uma
quantidade qualquer de tags com uma quantidade qualquer de atributos, as
diferentes ocorrencias de valor de um atributo especifico: valign, por ex:

sed -r '
            /valign/!d
            s/valign=["'\'']?[^"'\'' ]+["'\'']?/\r&\f/g
            s/^[^\r]*//; s/\f[^\r]+\r/\n/g
            s/\f[^\r]*$//
          ' *.html | sort | uniq

valign="middle"
valign="top"
valign=top
valign='bottom'

Obrigado a voces tres, Jan, Ivan e Jimmy!

[]'s

--
(o_   ------------------     __o
//\   arkanon@...   _`\<,
V_/_  --- www.lsd.org.br  (_)/(_)
---------------------------------


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

#4550 De: Jan FRS <janfrs3@...>
Data: Qui, 21 de Out de 2010 12:15 pm
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
janfrs3
Enviar e-mail Enviar e-mail
 
Muito interessante estes controles de caracteres, essa foi a melhor linha
(se fosse um concurso heheh),
Onde eu vejo mais sobre isso?

tem alguma lista disso num link ou alguma referencia?  jimmy? (agradeço)

Em 20 de outubro de 2010 21:55, Arkanon <arkanon@...> escreveu:

>
>
> Em 20 de outubro de 2010 22:03, jimmy
<jimmy.tty@...<jimmy.tty%40gmail.com>>
> escreveu:
>
>
> > Tem como resolver isso num único script sed marcando o padrão com
> > caracteres de controle, por exemplo, e fazendo a substituição com base
> > neles:
> >
> > $ sed 's/pe!r./\r&\f/g;s/^[^\r]*//;s/\f[^\r]\+\r/,/g;s/\f[^\r]*$//' <<<
> > 'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3'
> >
> > - 's/pe!r./\r&\f/g' transforma o pattern space em:
> >
> > \rpe!ro\fbatata-\rpe!r1\f uva mamao \rpe!ra0\fjaca\rpe!r3\r
> >
> > - 's/^[^\r]*//' remove tudo que não interessa no começo da linha
> >
> > - 's/\f[^\r]\+\r/,/g' insere as vírgulas entre os padrões encontrados
> >
> > - 's/\f[^\r]*$//' remove tudo que não interessa no fim da linha
> >
> > e acaba sendo apenas uma adaptação da técnica para se emular um "grep
> > -o".
> >
> Perfeito!
>
> Eu estava aqui quebrando a cabeca porque as dicas do Jan e do Ivan
> funcionaram a principio, mas quando alterei o padrao da linha para algo com
> uma string qualquer no inicio diferente do padrao (pe!r.), essa string nao
> parava de encher o saco:
>
> sed -r ' /pe!r./s//\n&\n=/g; s/=[^\n]*//g; s/(\n(\n)|\n($))/\2/g; ' <<<
> 'oipe!robatata-pe!r1 uva mamao pe!ra0jacape!r3txau'
>
> oi
>
> pe!ro
> pe!r1
> pe!ra
> pe!r3
>
> Mas a sua dica funcionou:
>
> sed -r ' s/pe!r./\r&\f/g; s/^[^\r]*//; s/\f[^\r]+\r/\n/g; s/\f[^\r]*$//; '
> <<< 'oipe!robatata-pe!r1 uva mamao pe!ra0jacape!r3txau'
>
>
> pe!ro
> pe!r1
> pe!ra
> pe!r3
>
> E agora foi so adaptar para o objetivo inicial: identificar numa quantidade
> qualquer de arquivos html, com uma quantidade qualquer de linhas com uma
> quantidade qualquer de tags com uma quantidade qualquer de atributos, as
> diferentes ocorrencias de valor de um atributo especifico: valign, por ex:
>
> sed -r '
> /valign/!d
> s/valign=["'\'']?[^"'\'' ]+["'\'']?/\r&\f/g
> s/^[^\r]*//; s/\f[^\r]+\r/\n/g
> s/\f[^\r]*$//
> ' *.html | sort | uniq
>
> valign="middle"
> valign="top"
> valign=top
> valign='bottom'
>
> Obrigado a voces tres, Jan, Ivan e Jimmy!
>
> []'s
>
> --
> (o_ ------------------ __o
> //\ arkanon@... <arkanon%40lsd.org.br> _`\<,
>
> V_/_ --- www.lsd.org.br (_)/(_)
> ---------------------------------
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>


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

#4551 De: jimmy <jimmy.tty@...>
Data: Qui, 21 de Out de 2010 11:21 pm
Assunto: Re: Re: Remover tudo na linha exceto as ocorrencias de uma string
ronaldo_tgz
Enviar e-mail Enviar e-mail
 
On Thu, Oct 21, 2010 at 09:15:42AM -0300, Jan FRS wrote:
> Muito interessante estes controles de caracteres, essa foi a melhor linha
> (se fosse um concurso heheh),
> Onde eu vejo mais sobre isso?
>
> tem alguma lista disso num link ou alguma referencia?  jimmy? (agradeço)
A referência que eu uso é o man e info do gnu sed, nesse caso o node
específico é o:

   $ info sed Escapes

>
> Em 20 de outubro de 2010 21:55, Arkanon <arkanon@...> escreveu:
>
> >
> >
> > Em 20 de outubro de 2010 22:03, jimmy
<jimmy.tty@...<jimmy.tty%40gmail.com>>
> > escreveu:
> >
> >
> > > Tem como resolver isso num único script sed marcando o padrão com
> > > caracteres de controle, por exemplo, e fazendo a substituição com base
> > > neles:
> > >
> > > $ sed 's/pe!r./\r&\f/g;s/^[^\r]*//;s/\f[^\r]\+\r/,/g;s/\f[^\r]*$//' <<<
> > > 'pe!robatata-pe!r1 uva mamao pe!ra0jacape!r3'
> > >
> > > - 's/pe!r./\r&\f/g' transforma o pattern space em:
> > >
> > > \rpe!ro\fbatata-\rpe!r1\f uva mamao \rpe!ra0\fjaca\rpe!r3\r
> > >
> > > - 's/^[^\r]*//' remove tudo que não interessa no começo da linha
> > >
> > > - 's/\f[^\r]\+\r/,/g' insere as vírgulas entre os padrões encontrados
> > >
> > > - 's/\f[^\r]*$//' remove tudo que não interessa no fim da linha
> > >
> > > e acaba sendo apenas uma adaptação da técnica para se emular um "grep
> > > -o".
> > >
> > Perfeito!
> >
> > Eu estava aqui quebrando a cabeca porque as dicas do Jan e do Ivan
> > funcionaram a principio, mas quando alterei o padrao da linha para algo com
> > uma string qualquer no inicio diferente do padrao (pe!r.), essa string nao
> > parava de encher o saco:
> >
> > sed -r ' /pe!r./s//\n&\n=/g; s/=[^\n]*//g; s/(\n(\n)|\n($))/\2/g; ' <<<
> > 'oipe!robatata-pe!r1 uva mamao pe!ra0jacape!r3txau'
> >
> > oi
> >
> > pe!ro
> > pe!r1
> > pe!ra
> > pe!r3
> >
> > Mas a sua dica funcionou:
> >
> > sed -r ' s/pe!r./\r&\f/g; s/^[^\r]*//; s/\f[^\r]+\r/\n/g; s/\f[^\r]*$//; '
> > <<< 'oipe!robatata-pe!r1 uva mamao pe!ra0jacape!r3txau'
> >
> >
> > pe!ro
> > pe!r1
> > pe!ra
> > pe!r3
> >
> > E agora foi so adaptar para o objetivo inicial: identificar numa quantidade
> > qualquer de arquivos html, com uma quantidade qualquer de linhas com uma
> > quantidade qualquer de tags com uma quantidade qualquer de atributos, as
> > diferentes ocorrencias de valor de um atributo especifico: valign, por ex:
> >
> > sed -r '
> > /valign/!d
> > s/valign=["'\'']?[^"'\'' ]+["'\'']?/\r&\f/g
> > s/^[^\r]*//; s/\f[^\r]+\r/\n/g
> > s/\f[^\r]*$//
> > ' *.html | sort | uniq
> >
> > valign="middle"
> > valign="top"
> > valign=top
> > valign='bottom'
> >
> > Obrigado a voces tres, Jan, Ivan e Jimmy!
> >
> > []'s
> >
> > --
> > (o_ ------------------ __o
> > //\ arkanon@... <arkanon%40lsd.org.br> _`\<,
> >
> > V_/_ --- www.lsd.org.br (_)/(_)
> > ---------------------------------

--
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------

#4552 De: "Diego Gomes - TI Cecred" <diego.gomes@...>
Data: Qui, 28 de Out de 2010 8:45 pm
Assunto: ajuda com quebra de linha
diego.gomes@...
Enviar e-mail Enviar e-mail
 
Olá pessoal..

tenho o seguinte conteudo..

Outubro 28 07:45:41 Grupo = TESTE Usuario = USER-JOAO IP Externo =
200.200.200.200 IP Interno =

192.168.11.198
Duracao da Conexao: 2h:47m:48s


preciso que a partir do IP, seja quebrado linha, ficando:



Outubro 28 07:45:41 Grupo = TESTE Usuario = USER-JOAO IP Externo =
200.200.200.200

IP Interno =  192.168.11.198
Duracao da Conexao: 2h:47m:48s





como posso ter esse resultado??



Obrigado.



Diego


--
Esta mensagem foi verificada pelo sistema de antivirus e
  acredita-se estar livre de perigo.



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

#4553 De: Jan FRS <janfrs3@...>
Data: Sex, 29 de Out de 2010 11:05 am
Assunto: Re: ajuda com quebra de linha
janfrs3
Enviar e-mail Enviar e-mail
 
use \n para inserir quebras de linha

sed -e 's/IP Interno/\nIP Interno/'  usuarios.log

Em 28 de outubro de 2010 17:45, Diego Gomes - TI Cecred <
diego.gomes@...> escreveu:

>
>
> Olá pessoal..
>
> tenho o seguinte conteudo..
>
> Outubro 28 07:45:41 Grupo = TESTE Usuario = USER-JOAO IP Externo =
> 200.200.200.200 IP Interno =
>
> 192.168.11.198
> Duracao da Conexao: 2h:47m:48s
>
> preciso que a partir do IP, seja quebrado linha, ficando:
>
> Outubro 28 07:45:41 Grupo = TESTE Usuario = USER-JOAO IP Externo =
> 200.200.200.200
>
> IP Interno = 192.168.11.198
> Duracao da Conexao: 2h:47m:48s
>
> como posso ter esse resultado??
>
> Obrigado.
>
> Diego
>
> --
> Esta mensagem foi verificada pelo sistema de antivirus e
> acredita-se estar livre de perigo.
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>


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

#4554 De: "Diego Gomes - TI Cecred" <diego.gomes@...>
Data: Sex, 29 de Out de 2010 11:47 am
Assunto: Re: {Disarmed} Re: ajuda com quebra de linha
diego.gomes@...
Enviar e-mail Enviar e-mail
 
legal Jan, era assim mesmo... eu havia tentado mas nao tinha dado certo...

obrigado,

Diego


From: Jan FRS
Sent: Friday, October 29, 2010 9:05 AM
To: sed-br@...
Subject: {Disarmed} Re: [sed-br] ajuda com quebra de linha



use \n para inserir quebras de linha

sed -e 's/IP Interno/\nIP Interno/' usuarios.log

Em 28 de outubro de 2010 17:45, Diego Gomes - TI Cecred <
diego.gomes@...> escreveu:

>
>
> Olá pessoal..
>
> tenho o seguinte conteudo..
>
> Outubro 28 07:45:41 Grupo = TESTE Usuario = USER-JOAO IP Externo =
> 200.200.200.200 IP Interno =
>
> 192.168.11.198
> Duracao da Conexao: 2h:47m:48s
>
> preciso que a partir do IP, seja quebrado linha, ficando:
>
> Outubro 28 07:45:41 Grupo = TESTE Usuario = USER-JOAO IP Externo =
> 200.200.200.200
>
> IP Interno = 192.168.11.198
> Duracao da Conexao: 2h:47m:48s
>
> como posso ter esse resultado??
>
> Obrigado.
>
> Diego
>
> --
> Esta mensagem foi verificada pelo sistema de antivirus e
> acredita-se estar livre de perigo.
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>

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




--
Esta mensagem foi verificada pelo sistema de antivirus e
acredita-se estar livre de perigo.
--
Esta mensagem foi verificada pelo sistema de antivirus e
  acredita-se estar livre de perigo.



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

#4555 De: Robson Roberto Souza Peixoto <robsonpeixoto@...>
Data: Qui, 11 de Nov de 2010 6:45 pm
Assunto: #include "SOME_THING_BLA" para #include <SOME_THING_BLA>
robsonpeixoto
Enviar e-mail Enviar e-mail
 
Galera,

eu não tenho a minima ideia de como escrever uma ER que faça essa alteração.

Alguém poderia ajudar, por favor.

Obrigado

--
Robson Roberto Souza Peixoto
Robinho
robsonpeixoto@...
Computer Science Master's degree student, University of Campinas
Arch Linux Brasil Developer - http://archlinux-br.org
Linux Counter #395633
IRC: robsonpeixoto
Twitter: http://twitter.com/rrspba
github: https://github.com/robsonpeixoto

#4556 De: Jan FRS <janfrs3@...>
Data: Qui, 11 de Nov de 2010 7:38 pm
Assunto: Re: #include "SOME_THING_BLA" para #include <SOME_THING_BLA>
janfrs3
Enviar e-mail Enviar e-mail
 
sed -e 's/"\([^"]\+\)"/<\1>/' arquivo.c

Ja que vc não conhece ER, quem sabe vc se interessa em aprender:

sed -e # chamada do programa sed , argumento de expressão

s/ # comando substituição do sed, s/ER/SUBSTITUIÇÃO/

"\([^"]\+\)" # Nossa ER, uma aspa dupla -- ", guarde o resto no grupo \1 --
\(, um ou mais caracteres que sejam qualquer coisa menos uma aspa dula --
[^"]\+, feche o grupo \), uma aspa dupla

/<\1>/ # nossa substuição, o \1 mostrará o que foi salvo no parentese da ER,
a string dentro da aspa dupla, e agora vamos substituir por < e >

: )

Em 11 de novembro de 2010 15:45, Robson Roberto Souza Peixoto <
robsonpeixoto@...> escreveu:

>
>
> Galera,
>
> eu não tenho a minima ideia de como escrever uma ER que faça essa
> alteração.
>
> Alguém poderia ajudar, por favor.
>
> Obrigado
>
> --
> Robson Roberto Souza Peixoto
> Robinho
> robsonpeixoto@... <robsonpeixoto%40gmail.com>
> Computer Science Master's degree student, University of Campinas
> Arch Linux Brasil Developer - http://archlinux-br.org
> Linux Counter #395633
> IRC: robsonpeixoto
> Twitter: http://twitter.com/rrspba
> github: https://github.com/robsonpeixoto
>
>


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

#4557 De: "heltonbiker" <heltonbiker@...>
Data: Sex, 12 de Nov de 2010 12:12 am
Assunto: Re: #include "SOME_THING_BLA" para #include <SOME_THING_BLA>
heltonbiker
Enviar e-mail Enviar e-mail
 
Somente complementando...

A expressão apresentada tem vários caracteres de escape \ (antes do parentese,
antes do mais), que podem ser evitados com a opção -r.
Também, a opção -e pode ser omitida quando houver uma única expressão no comando
todo.
Assim, ficaria:

sed -r 's/"([^"]+)"/<\1>/' arquivo.c

Espero que seja útil, assim como tem sido útil esses conhecimentos elementares
de ER, que quebram muitos galhos para mim (que não sou profissional nem nada).

Até

Helton



--- Em sed-br@..., Jan FRS <janfrs3@...> escreveu
>
> sed -e 's/"\([^"]\+\)"/<\1>/' arquivo.c
>
> Ja que vc não conhece ER, quem sabe vc se interessa em aprender:
>
> sed -e # chamada do programa sed , argumento de expressão
>
> s/ # comando substituição do sed, s/ER/SUBSTITUIÇÃO/
>
> "\([^"]\+\)" # Nossa ER, uma aspa dupla -- ", guarde o resto no grupo \1 --
> \(, um ou mais caracteres que sejam qualquer coisa menos uma aspa dula --
> [^"]\+, feche o grupo \), uma aspa dupla
>
> /<\1>/ # nossa substuição, o \1 mostrará o que foi salvo no parentese da ER,
> a string dentro da aspa dupla, e agora vamos substituir por < e >
>
> : )
>
> Em 11 de novembro de 2010 15:45, Robson Roberto Souza Peixoto <
> robsonpeixoto@...> escreveu:
>
> >
> >
> > Galera,
> >
> > eu não tenho a minima ideia de como escrever uma ER que faça essa
> > alteração.
> >
> > Alguém poderia ajudar, por favor.
> >
> > Obrigado
> >
> > --
> > Robson Roberto Souza Peixoto
> > Robinho
> > robsonpeixoto@... <robsonpeixoto%40gmail.com>
> > Computer Science Master's degree student, University of Campinas
> > Arch Linux Brasil Developer - http://archlinux-br.org
> > Linux Counter #395633
> > IRC: robsonpeixoto
> > Twitter: http://twitter.com/rrspba
> > github: https://github.com/robsonpeixoto
> >
> >
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>

#4558 De: Robson Roberto Souza Peixoto <robsonpeixoto@...>
Data: Dom, 14 de Nov de 2010 9:14 am
Assunto: Re: Re: #include "SOME_THING_BLA" para #include <SOME_THING_BLA>
robsonpeixoto
Enviar e-mail Enviar e-mail
 
Obrigado galera.

Eu vou estudar mais sobre sed.

Abraços

2010/11/11 heltonbiker <heltonbiker@...>:
> Somente complementando...
>
> A expressão apresentada tem vários caracteres de escape \ (antes do
parentese, antes do mais), que podem ser evitados com a opção -r.
> Também, a opção -e pode ser omitida quando houver uma única expressão no
comando todo.
> Assim, ficaria:
>
> sed -r 's/"([^"]+)"/<\1>/' arquivo.c
>
> Espero que seja útil, assim como tem sido útil esses conhecimentos
elementares de ER, que quebram muitos galhos para mim (que não sou profissional
nem nada).
>
> Até
>
> Helton
>
>
>
> --- Em sed-br@..., Jan FRS <janfrs3@...> escreveu
>>
>> sed -e 's/"\([^"]\+\)"/<\1>/' arquivo.c
>>
>> Ja que vc não conhece ER, quem sabe vc se interessa em aprender:
>>
>> sed -e # chamada do programa sed , argumento de expressão
>>
>> s/ # comando substituição do sed, s/ER/SUBSTITUIÇÃO/
>>
>> "\([^"]\+\)" # Nossa ER, uma aspa dupla -- ", guarde o resto no grupo \1 --
>> \(, um ou mais caracteres que sejam qualquer coisa menos uma aspa dula --
>> [^"]\+, feche o grupo \), uma aspa dupla
>>
>> /<\1>/ # nossa substuição, o \1 mostrará o que foi salvo no parentese da
ER,
>> a string dentro da aspa dupla, e agora vamos substituir por < e >
>>
>> : )
>>
>> Em 11 de novembro de 2010 15:45, Robson Roberto Souza Peixoto <
>> robsonpeixoto@...> escreveu:
>>
>> >
>> >
>> > Galera,
>> >
>> > eu não tenho a minima ideia de como escrever uma ER que faça essa
>> > alteração.
>> >
>> > Alguém poderia ajudar, por favor.
>> >
>> > Obrigado
>> >
>> > --
>> > Robson Roberto Souza Peixoto
>> > Robinho
>> > robsonpeixoto@... <robsonpeixoto%40gmail.com>
>> > Computer Science Master's degree student, University of Campinas
>> > Arch Linux Brasil Developer - http://archlinux-br.org
>> > Linux Counter #395633
>> > IRC: robsonpeixoto
>> > Twitter: http://twitter.com/rrspba
>> > github: https://github.com/robsonpeixoto
>> >
>> >
>>
>>
>> [As partes desta mensagem que não continham texto foram removidas]
>>
>
>
>
>
> ------------------------------------
>
> --
> para sair da lista: sed-br-unsubscribe@... do Yahoo!
Grupos
>
>
>



--
Robson Roberto Souza Peixoto
Robinho
robsonpeixoto@...
Computer Science Master's degree student, University of Campinas
Arch Linux Brasil Developer - http://archlinux-br.org
Linux Counter #395633
IRC: robsonpeixoto
Twitter: http://twitter.com/rrspba
github: https://github.com/robsonpeixoto

#4560 De: Danillo Costa Ferreira <hellnux@...>
Data: Ter, 30 de Nov de 2010 11:56 pm
Assunto: Excluir tudo antes de determinado texto
hellnux
Enviar e-mail Enviar e-mail
 
Olá,

Qual comando em sed que exclui tudo o que vier antes de determinada palavra?

Por exemplo:
domain.com.br. 85505 IN A 187.44.215.170

Fique apenas:
187.44.215.170

--
hellnux,
[]'s


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

#4561 De: Jan FRS <janfrs3@...>
Data: Qua, 1 de Dez de 2010 1:36 am
Assunto: Re: Excluir tudo antes de determinado texto
janfrs3
Enviar e-mail Enviar e-mail
 
Você pode circular o padrão com caracteres especiais ou de controle e depois
fazer um ponto-asterisco no resto, em uma segunda substituiação:

$ echo 'domain.com.br. 85505 IN A 187.44.215.170' | sed -e
's/\([0-9]\+\(\.[0-9]\+\)\{3\}\)/###\1###/;s/^.*###\([^#]\+\)###.*$/\1/'


linha original:
domain.com.br. 85505 IN A 187.44.215.170

primeira substituição:
domain.com.br. 85505 IN A ###187.44.215.170###

segunda substituição:
187.44.215.170

meio forçado mas funcionará.

Se não fizessemos isto, o .* comeria nosso padrão,

<alerta> caso ocorra mais de uma ocorrência na mesma linha, você terá
problemas:

nesse caso, uma solução (entre muitas possiveis):

$ echo 'domain.com.br. 85505 IN A 187.44.215.170 and on a 200.189.1.10' |
sed -e
's/\([0-9]\+\(\.[0-9]\+\)\{3\}\)/###\1###/g;s/[^#]*###\([^#]\+\)###/\1;/g'


linha original:
domain.com.br. 85505 IN A 187.44.215.170 and on a 200.189.1.10

primeira substituição:
domain.com.br. 85505 IN A ###187.44.215.170### and on a ###200.189.1.10###

segunda substituição:
187.44.215.170;200.189.1.10;

essas são só algumas idéias ai...


Em 30 de novembro de 2010 20:56, Danillo Costa Ferreira
<hellnux@...>escreveu:

>
>
> Olá,
>
> Qual comando em sed que exclui tudo o que vier antes de determinada
> palavra?
>
> Por exemplo:
> domain.com.br. 85505 IN A 187.44.215.170
>
> Fique apenas:
> 187.44.215.170
>
> --
> hellnux,
> []'s
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>


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

#4562 De: Danillo Costa Ferreira <hellnux@...>
Data: Qua, 1 de Dez de 2010 2:06 am
Assunto: Re: Excluir tudo antes de determinado texto
hellnux
Enviar e-mail Enviar e-mail
 
Obrigado! Funcionou perfeitamente.

Não haverá 2 números IP na mesma linha. O que pode mudar é o nome do domínio
e os números "85505"

Em 30 de novembro de 2010 23:36, Jan FRS <janfrs3@...> escreveu:

>
>
> Você pode circular o padrão com caracteres especiais ou de controle e
> depois
> fazer um ponto-asterisco no resto, em uma segunda substituiação:
>
> $ echo 'domain.com.br. 85505 IN A 187.44.215.170' | sed -e
> 's/\([0-9]\+\(\.[0-9]\+\)\{3\}\)/###\1###/;s/^.*###\([^#]\+\)###.*$/\1/'
>
> linha original:
>
> domain.com.br. 85505 IN A 187.44.215.170
>
> primeira substituição:
> domain.com.br. 85505 IN A ###187.44.215.170###
>
> segunda substituição:
> 187.44.215.170
>
> meio forçado mas funcionará.
>
> Se não fizessemos isto, o .* comeria nosso padrão,
>
> <alerta> caso ocorra mais de uma ocorrência na mesma linha, você terá
> problemas:
>
> nesse caso, uma solução (entre muitas possiveis):
>
> $ echo 'domain.com.br. 85505 IN A 187.44.215.170 and on a 200.189.1.10' |
> sed -e
> 's/\([0-9]\+\(\.[0-9]\+\)\{3\}\)/###\1###/g;s/[^#]*###\([^#]\+\)###/\1;/g'
>
> linha original:
> domain.com.br. 85505 IN A 187.44.215.170 and on a 200.189.1.10
>
> primeira substituição:
> domain.com.br. 85505 IN A ###187.44.215.170### and on a ###200.189.1.10###
>
> segunda substituição:
> 187.44.215.170;200.189.1.10;
>
> essas são só algumas idéias ai...
>
> Em 30 de novembro de 2010 20:56, Danillo Costa Ferreira
> <hellnux@... <hellnux%40gmail.com>>escreveu:
>
>
> >
> >
> > Olá,
> >
> > Qual comando em sed que exclui tudo o que vier antes de determinada
> > palavra?
> >
> > Por exemplo:
> > domain.com.br. 85505 IN A 187.44.215.170
> >
> > Fique apenas:
> > 187.44.215.170
> >
> > --
> > hellnux,
> > []'s
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>



--
hellnux,
[]'s


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

#4563 De: Renato Borges <renato.callado.borges@...>
Data: Qua, 1 de Dez de 2010 12:06 pm
Assunto: Re: Excluir tudo antes de determinado texto
tezcatlipoca_br
Enviar e-mail Enviar e-mail
 
2010/11/30 Danillo Costa Ferreira <hellnux@...>

>
>
> Olá,
>
Olá!

>
> Qual comando em sed que exclui tudo o que vier antes de determinada
> palavra?
>
> Por exemplo:
> domain.com.br. 85505 IN A 187.44.215.170
>
> Fique apenas:
> 187.44.215.170
>
> $ echo 'domain.com.br. 85505 IN A 187.44.215.170' | sed 's/.* \(.*\)/\1/'
187.44.215.170

A idéia é: guarde o que vem depois do último espaço na variável 1. Imprima a
variável 1. Para apagar tudo antes e depois de uma outra palavra, você tem
que selecionar de outra forma. Recomendo nesse caso usar a ferramenta "cut".

Por exemplo, para cortar a 3a palavra desta frase:

$ echo 'Por exemplo, para cortar a 3a palavra desta frase:' | cut -d" " -f 3
para

--
> hellnux,
> []'s
>
> []s,
Renato.


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

#4564 De: Luís Henrique <luishsamonte@...>
Data: Qua, 1 de Dez de 2010 12:26 pm
Assunto: Re: Excluir tudo antes de determinado texto
luishsamonte
Enviar e-mail Enviar e-mail
 
Outra forma, com grep (a regex de IP tá bem grosseira):

$ echo 'domain.com.br. 85505 IN A 187.44.215.170' | grep -Po
'([0-9]{1,3}\.){3}[0-9]{1,3}'

Opção -P = perl like
Opção -o faz a "mágica": mostra somente o que casou. :-)

2010/12/1 Renato Borges <renato.callado.borges@...>

>
>
> 2010/11/30 Danillo Costa Ferreira <hellnux@... <hellnux%40gmail.com>
> >
>
> >
> >
> > Olá,
>
> >
> Olá!
>
> >
> > Qual comando em sed que exclui tudo o que vier antes de determinada
> > palavra?
> >
> > Por exemplo:
> > domain.com.br. 85505 IN A 187.44.215.170
> >
> > Fique apenas:
> > 187.44.215.170
> >
> > $ echo 'domain.com.br. 85505 IN A 187.44.215.170' | sed 's/.*
> \(.*\)/\1/'
> 187.44.215.170
>
> A idéia é: guarde o que vem depois do último espaço na variável 1. Imprima
> a
> variável 1. Para apagar tudo antes e depois de uma outra palavra, você tem
> que selecionar de outra forma. Recomendo nesse caso usar a ferramenta
> "cut".
>
> Por exemplo, para cortar a 3a palavra desta frase:
>
> $ echo 'Por exemplo, para cortar a 3a palavra desta frase:' | cut -d" " -f
> 3
> para
>
> --
> > hellnux,
> > []'s
> >
> > []s,
> Renato.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>



--
Luís Henrique Borges Sousa
Graduando em Ciência da Computação
Universidade Federal de Lavras - MG

http://luishenrique.org
@luish (identi.ca) e @lshenr (twitter)


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

#4565 De: Jan FRS <janfrs3@...>
Data: Qua, 1 de Dez de 2010 1:15 pm
Assunto: Re: Excluir tudo antes de determinado texto
janfrs3
Enviar e-mail Enviar e-mail
 
a mesma coisa, feita em awk:

$ echo 'Por exemplo, para cortar a 3a palavra desta frase:' | awk '{print
$3}'
para

Em 1 de dezembro de 2010 09:06, Renato Borges <
renato.callado.borges@...> escreveu:

> echo 'Por exemplo, para cortar a 3a palavra desta frase:'


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

#4566 De: Sérgio <voyeg3r@...>
Data: Qua, 1 de Dez de 2010 3:26 pm
Assunto: Re: Excluir tudo antes de determinado texto
voyeg3r
Enviar e-mail Enviar e-mail
 
se a informação ocorre sempre no ultimo campo (coluna) há esta opção

awk '{print $NF}' file

--- Em sed-br@..., Jan FRS <janfrs3@...> escreveu
>
> a mesma coisa, feita em awk:
>
> $ echo 'Por exemplo, para cortar a 3a palavra desta frase:' | awk '{print
> $3}'
> para
>
> Em 1 de dezembro de 2010 09:06, Renato Borges <
> renato.callado.borges@...> escreveu:
>
> > echo 'Por exemplo, para cortar a 3a palavra desta frase:'
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>

#4567 De: Danillo Costa Ferreira <hellnux@...>
Data: Qua, 1 de Dez de 2010 7:30 pm
Assunto: Re: Re: Excluir tudo antes de determinado texto
hellnux
Enviar e-mail Enviar e-mail
 
Obrigado pelas respostas.

A solução com awk ficou elegante ^^

Como eu estava fazendo um shell script, econtrei uma solução diferente,
segue:

d=domain.com
tmp=`dig +noall +answer $d | head -1`
IPhost=`echo ${tmp#*A}`

Isso faz com que seja excluido tudo que houver a esquerda de "A", incluindo
o "A"

Em 1 de dezembro de 2010 13:26, Sérgio <voyeg3r@...> escreveu:

>
>
>
> se a informação ocorre sempre no ultimo campo (coluna) há esta opção
>
> awk '{print $NF}' file
>
> --- Em sed-br@... <sed-br%40yahoogrupos.com.br>, Jan FRS
> <janfrs3@...> escreveu
>
> >
> > a mesma coisa, feita em awk:
> >
> > $ echo 'Por exemplo, para cortar a 3a palavra desta frase:' | awk '{print
> > $3}'
> > para
> >
> > Em 1 de dezembro de 2010 09:06, Renato Borges <
> > renato.callado.borges@...> escreveu:
>
> >
> > > echo 'Por exemplo, para cortar a 3a palavra desta frase:'
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>
>



--
hellnux,
[]'s


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

#4568 De: "carloshapadron" <carloshapadron@...>
Data: Ter, 7 de Dez de 2010 6:47 pm
Assunto: Identificar palavras
carloshapadron
Enviar e-mail Enviar e-mail
 
Boa tarde colegas....

Gostaria de uma ajuda, já procurei algo parecido no grupo e não encontrei.
Meu problema é o seguinte;

Eu preciso identificar uma palavra no meio de um texto e em seguida imprimir a
palavra seguida, por exemplo:
.... bla, bla, bla, o email: fulano_de_tal@....
Gostaria de apanhar o "fulano_de_tal@..." e colar em outro arquivo.
O script que eu fiz funciona apenas se a palavra, por exemplo, email estiver no
inicio da frase, se ele estiver no meio do texto não esta funcionando.


Obrigado pela atenção.

abrs.

#4569 De: Helton Moraes <heltonbiker@...>
Data: Ter, 7 de Dez de 2010 8:22 pm
Assunto: Res: Identificar palavras
heltonbiker
Enviar e-mail Enviar e-mail
 
Olá, Carlos

Para que possamos tentar alguma coisa, mande aí o script que você já tem, e
se possível um trecho real do texto que você tem (se possível mais de uma
linha) e a saída correspondente que você gostaria de obter.

Até

Helton


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

#4570 De: Jan FRS <janfrs3@...>
Data: Ter, 7 de Dez de 2010 8:24 pm
Assunto: Re: Identificar palavras
janfrs3
Enviar e-mail Enviar e-mail
 
o seu problema é parecido com o hellnux veja o post:

"Excluir tudo antes de determinado texto" --->
http://br.groups.yahoo.com/group/sed-br/message/4567

dê uma olhada pra ver se ajuda, se não ajudar, lembra que se vc ja conseguiu
uma solução mas ela só funciona no começo, coloque o código ai para nós
debulharmos

Em 7 de dezembro de 2010 15:47, carloshapadron
<carloshapadron@...>escreveu:

>
>
> Boa tarde colegas....
>
> Gostaria de uma ajuda, já procurei algo parecido no grupo e não encontrei.
> Meu problema é o seguinte;
>
> Eu preciso identificar uma palavra no meio de um texto e em seguida
> imprimir a palavra seguida, por exemplo:
> .... bla, bla, bla, o email: fulano_de_tal@...<fulano_de_tal%40qlqr.com>
> .
> Gostaria de apanhar o "fulano_de_tal@... <fulano_de_tal%40qlqr.com>"
> e colar em outro arquivo.
> O script que eu fiz funciona apenas se a palavra, por exemplo, email
> estiver no inicio da frase, se ele estiver no meio do texto não esta
> funcionando.
>
> Obrigado pela atenção.
>
> abrs.
>
>
>


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

mensagens 4538 - 4570 de 5040   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
mensagens 4538 - 4570 de 5040   Mais antigos  |  < Mais antigos  |  Mais recentes >  |  Mais recentes
Avançado

Copyright © 2010 Yahoo! do Brasil Internet Ltda. Todos os direitos reservados.
Política de Privacidade - Termos do Serviço - Diretrizes - Ajuda