Bom dia!
Quem pode traduzir esta solução?
sed 'x;n;N;N;x;N;G' x.txt

------------------------------------------------------------------------
  Ninguém há semelhante a ti, ó Senhor; tu és grande, e grande o poder 
do teu nome. (1ªJeremias 10.6)
  No one is like you, O Lord; you are great, and your name is mighty in 
power. (1ªJeremiah 10.6)
  Jesus te ama, aceite-O!   Jesus loves you, accept you Him!



Fabiano Caixeta Duarte escreveu:
>
> Eduardo escreveu:
> > node1:~# cat x.txt
> >
> > <INCLUIR>
> > ..CLASSE:MS
> > -MANDADO
> > -8901223244
> > ..ID_DOCUMENTO:22
> > <INCLUIR>
> > ..CLASSE:MS
> > -MANDADO
> > -8901223245
> > ..ID_DOCUMENTO:23
> > <INCLUIR>
> > ..CLASSE:MS
> > -MANDADO
> > -8901223246
> > ..ID_DOCUMENTO:24
> > <INCLUIR>
> > ..CLASSE:MS
> > -MANDADO
> > -8901223247
> > ..ID_DOCUMENTO:25
> > <INCLUIR>
> > ..CLASSE:MS
> > -MANDADO
> > -8901223248
> > ..ID_DOCUMENTO:26
> > <INCLUIR>
> > ..CLASSE:MS
> > -MANDADO
> > -8901223249
> > ..ID_DOCUMENTO:27
> >
> > e deveria ficar assim:
> >
> > node1:~# cat y.txt
> >
> > <INCLUIR>
> > ..ID_DOCUMENTO:22
> > ..CLASSE:MS
> > -MANDADO
> > -8901223244
> > <INCLUIR>
> > ..ID_DOCUMENTO:23
> > ..CLASSE:MS
> > -MANDADO
> > -8901223245
> > <INCLUIR>
> > ..ID_DOCUMENTO:24
> > ..CLASSE:MS
> > -MANDADO
> > -8901223246
> > <INCLUIR>
> > ..ID_DOCUMENTO:25
> > ..CLASSE:MS
> > -MANDADO
> > -8901223247
> > <INCLUIR>
> > ..ID_DOCUMENTO:26
> > ..CLASSE:MS
> > -MANDADO
> > -8901223248
> > <INCLUIR>
> > ..ID_DOCUMENTO:27
> > ..CLASSE:MS
> > -MANDADO
> > -8901223249
>
> Estou acompanhando esta thread e vi a solução do Flávio. Muito legal.
> Nunca fiz nada em ed. Entretanto, fiz uma solução com sed que também
> serviu de aprendizado.
>
> sed 'x;n;N;N;x;N;G' x.txt
>
> Basicamente tem a ver com manipulação do que o sed chama de pattern
> space e hold space.
>
> Quanto à performance, segue um teste com arquivos de 1.7Mb (143998 linhas)
>
> $ time ed x.txt <<<$'g/^\.\.ID_DOC/m.-4\nw\nq'
> 1098000
> 1098000
>
> real 0m4.627s
> user 0m4.560s
> sys 0m0.036s
>
> $ time sed -i 'x;n;N;N;x;N;G' x.txt
>
> real 0m0.282s
> user 0m0.228s
> sys 0m0.052s
>
> -- 
> Fabiano Caixeta Duarte
> Especialista em Redes de Computadores
> Linux User #195299
> Ribeirão Preto - SP
>
>  

Responder a