[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Transformar linha em coluna.
From: |
jimmy |
Subject: |
Re: [shell-script] Transformar linha em coluna. |
Date: |
Mon, 25 May 2009 15:20:33 -0300 |
User-agent: |
Mutt/1.4.2.3i |
On Mon, May 25, 2009 at 09:26:22AM -0300, Pedro Bazzarella da Silva wrote:
> Amigos,
>
> Estou com uma dúvida:
>
> Tenho um arquivo com o seguinte layout:
> 1;2;3;4
> 5;6;7;8
>
> Eu gostaria de transformar o mesmo neste novo layout:
> 1;5
> 2;6
> 3;7
> 4;8
>
> A idéia é trocar linha por coluna.
>
> Existe algum comando no unix que faça isso direto?
>
> Abs,
>
> Pedro Bazzarella
> ------------------------------------
se o seu arquivo for "pequeno" para o seu hardware, você pode tentar
usar esse 1liner:
awk -F\;
'{for(i=1;i<=NF;i++){a[i,NR]=$i;}}END{for(i=1;i<=NF;i++){for(j=1;j<=NR;j++){ORS=(j==NR)?"\n":FS;print
a[i,j];};}}' arquivo
ele vai armazenar cada caractere em um array de 2 dimensões onde a
posições e o número da linha formam o índice; ao final do processamento
do arquivo, ele imprime o conteúdo do array.
--
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------