Entrar
Usuário novo? Cadastre-se
sed-br · Lista sobre SED e Expressões Regulares
? Você já é um associado? Entre no Yahoo!

Dicas

Você sabia...
Você pode fazer buscas no grupo por mensagens antigas.

Mensagens

  Ajuda
Avançado
Juntar duas linhas   Lista de mensagens  
Responder | Encaminhar Mensagem #4227 de 4300 |
Re: [sed-br] Juntar duas linhas

On Mon, Jun 29, 2009 at 06:45:02PM -0300, Alain Mouette wrote:
>
> Entendi o problema, eu estava fazendo uma parte e depois a outra, ou
> seja dois comandos sed separados.
>
> Sobrou alguma coisa... as outras linhas aparecem na saída também,
> resolvi (na gambiarra, hehe) assim:
>
> grep 'Reference\|ValeurCmp' GPT2.cmp | sed
> '/^Reference/N;s/[^=]\+=\s\+\([^;]\+\);[^=]\+=\s\+\([^;]\+\);/\1,\2/'
>
> mas deve ter como só imprimir as linhas que foram editadas, certo?
você pode usar o parâmetro "-n" no sed e colocar um "p" no final do
comando:

sed -n '/^Reference/N;s/[^=]\+=\s\+\([^;]\+\);[^=]\+=\s\+\([^;]\+\);/\1,\2/p'
arquivo

ou usar um "!d" para apagar todas as outras linhas:

sed '/^Reference/N;/[^=]\+=\s\+\([^;]\+\);[^=]\+=\s\+\([^;]\+\);/!d;s//\1,\2/'
arquivo

>
> Abraços,
> Alain
>
> ------------------------------------


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



Ter, 30 de Jun de 2009 12:24 pm

ronaldo_tgz
Offline Offline
Enviar e-mail Enviar e-mail

Encaminhar Mensagem #4227 de 4300 |
Expandir mensagens Nome/E-mail Classificar por data

pesquisei ni Só Sed, mas não encontrei como juntar duas linhas específicas. ... Cmp-Mod V01 Genere par PcbNew le Seg 29 Jun 2009 15:38:03 BRT BeginCmp ...
Alain Mouette
alainm3
Offline Enviar e-mail
29 de Jun de 2009
7:17 pm

... use o "Reference" como endereço e apense com a próxima linha: /^Reference/N; nesse ponto o pattern space ficará algo parecido com: "Reference =...
jimmy
ronaldo_tgz
Offline Enviar e-mail
29 de Jun de 2009
7:41 pm

Oi Jimmy, ... Infelizmente não funcionou... fazendo vários testes, só descobri que se trocar o "N" por "p", a linha fica repetida, então está achando a...
Alain Mouette
alainm3
Offline Enviar e-mail
29 de Jun de 2009
8:19 pm

... o script que sugeri ficaria apenas: sed '/^Reference/N;s/[^=]\+=\s\+\([^;]\+\);[^=]\+=\s\+\([^;]\+\);/\1,\2/' arquivo testando aqui funciona sem problema. ...
jimmy
ronaldo_tgz
Offline Enviar e-mail
29 de Jun de 2009
9:11 pm

... Entendi o problema, eu estava fazendo uma parte e depois a outra, ou seja dois comandos sed separados. Sobrou alguma coisa... as outras linhas aparecem na...
Alain Mouette
alainm3
Offline Enviar e-mail
29 de Jun de 2009
9:41 pm

... você pode usar o parâmetro "-n" no sed e colocar um "p" no final do comando: sed -n...
jimmy
ronaldo_tgz
Offline Enviar e-mail
30 de Jun de 2009
12:25 pm

Oi Jimmy, estou aproveitando para aprender :) ... Ok, este eu entendi :) - "-n" é para não imprimir, e o "p" imprime as linhas que interessam... ... Este eu...
Alain Mouette
alainm3
Offline Enviar e-mail
30 de Jun de 2009
9:34 pm

... era isso mesmo. ... ela é usada como endereço (info sed Addresses) para os comandos "!d", aproveitando para definir as backreferences "\1" e "\2" (info...
jimmy
ronaldo_tgz
Offline Enviar e-mail
1 de Jul de 2009
12:50 pm
Avançado

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