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

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

Re: Transformar blocos de um texto em uma linha


From: grande_uosh
Subject: Re: Transformar blocos de um texto em uma linha
Date: Sat, 07 Jun 2008 02:21:10 -0000
User-agent: eGroups-EW/0.82

Saca a malandragem:

$ cat xxx
ghdfjh dsgkj dshfgkjehagrk jhfd
dsfgja er ndfbaeyrg u erfc dsf
fsehrgte

fsd er dsfsd fr e
df er erfd fetrerrf dsf dsfrer
dsfr er sdfr esr rer sdfdsrt

$ awk -v RS="" -v FS='\n' -v OFS=";"  '$1=$1' xxx
ghdfjh dsgkj dshfgkjehagrk jhfd;dsfgja er ndfbaeyrg u erfc dsf ;fsehrgte
fsd er dsfsd fr e ;df er erfd fetrerrf dsf dsfrer ;dsfr er sdfr esr rer sdfdsrt

Se o separador dos blocos for uma linha vazia (RS), vc pode dizer que cada 
bloco é um 
Record e informar que o separador de Campos (FS) é \n, sendo que vc quer 
imprimir os 
campos separados (OFS) com ; -- basta forçar a barra ;-)

--- Em address@hidden, Petry <petrybr@...> escreveu
>
> Senhores,
> 
> Tenho um arquivo onde blocos se repetem do tipo:
> 
> *********** Bloco 1
>      dado1 'XXXXXXXXXX'H  -- "'AAAAAAA" --,
>      dado2 'AAAAAAAAA'H  -- "XXXXXXXXXX" --,
>              dado3 XX,
>              dado4 XX,
>      dado5 'XXXXXXXXXXXXXX'H  -- "AAAAAA" --,
>      dado6 XX,
>      dado7 'XXXXXXXXXX'H  -- "AAAAA" --,
> 
>  *********** Bloco 2
> ( e tudo se repete.....)
> 
> o que preciso é deixar os XXXX em uma linha separados por ; para exportar
> pro excel...
> 
> 1;XXXXXXXXXX;XXXXXXXXX;XX;XX;XXXXXXXXXXX;XX;XXXXXXX
>  2;XXXXXXXXXX;XXXXXXXXX;XX;XX;XXXXXXXXXXX;XX;XXXXXXX
> (...)
> 
> Usando o SED estou recebendo command garbled :(
> 
> Alguma sugestão de como posso fazer?
> 
> Att.,
> JP
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>





reply via email to

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