[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Tutorial: Convertendo logs de Licq em logs de IRC
From: |
aurelio |
Subject: |
Re: [shell-script] Tutorial: Convertendo logs de Licq em logs de IRC |
Date: |
Wed, 30 Apr 2003 14:47:33 -0300 (ART) |
ae olive :)
--- Fábio Olivé Leite <address@hidden> escreveu:
> Mas não funciona se houverem várias linhas consecutivas começadas
> por :, no caso de uma mensagem ter mais de uma linha... :))
opa, aí realmente o awk fica menor e mais fácil de entender...
> Talvez se possa arrumar para que funcione com mais de uma
> linha ':' se usarmos o hold buffer do sed para armazenar o nickname
> de quem fala, mas não sei como usá-lo.
exactamente.
$ cat lixo
[ R | 0001 | 0260 | 0000 | 1051628311 ]
:buenas patricio.
[ S | 0001 | 0270 | 0000 | 1051628461 ]
:fala paisano, tranquilo?
:entao, essa eh a segunda linha
:e a terceira
[ R | 0001 | 0260 | 0000 | 1051628311 ]
:tres linhas? nossa! :)
$ cat lixo | sed -n '/^\[ /{ s///;s/^R.*/felipe/;s/S.*/olive/;h; }
/^:/ { G;s/:\(.*\)\n\(.*\)/<\2> \1/p; }'
<felipe> buenas patricio.
<olive> fala paisano, tranquilo?
<olive> entao, essa eh a segunda linha
<olive> e a terceira
<felipe> tres linhas? nossa! :)
o 'h' guarda o nick ho HOLD (sobrescrevendo).
o 'G' pega o nick do HOLD (anexando). nesse ponto a linha fica:
:buenas patricio.\nfelipe
depois o s/// macho troca as partes de lugar e adiciona os <>
ok, admito: essa você venceu ;)
=====
--
ATENCAO: o www.verde666.org vai morrer, use www.aurelio.net
ATTENTION: www.verde666.org is no more, use www.aurelio.net
_______________________________________________________________________
Yahoo! Mail
O melhor e-mail gratuito da internet: 6MB de espaço, antivírus, acesso POP3,
filtro contra spam.
http://br.mail.yahoo.com/