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

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

Re: [shell-script] transformando duas colunas em varias


From: Julio C. Neves
Subject: Re: [shell-script] transformando duas colunas em varias
Date: Fri, 7 Aug 2009 20:16:18 -0300

Fala Otávio,
evitando um loop:

#  Montando a linha de cabeçalho
Cab=$(grep -E '^ *[0-9]+,' agua.mo.txt | cut -f1 -d, | paste -s)
#  Tirando os dados desnecessários, e criando n arquivos de
#+ 3 linhas denominados xaa xab xac xad ...:
grep -Ev '^ *[0-9]+,' agua.mo.txt | grep -Eo '[0-9]+,[0-9]{2}' | split -l3
#  finalmente, montando a saída que vc queria:
echo "$Cab" | cat - <(paste x??)
#  Limpando a área
rm -f x??

Não está testado, mas não deve ser muito diferente do que vc quer. Qdo vier
ao RJ, deve um chope... ;)
-- 
Abraços,
Julio
Cursos de Shell e Zenity?
- Em SP ligue (11) 2125-4747;
- Em DF ligue (61) 3223-3000;
- No RJ ligue (21) 2561-0867;
- Turmas fechadas em outras cidades ligue (21) 8112-9988.

2009/8/7 Otávio Fuganti <address@hidden>

>
>
> Olah!
> Tenho um problema com um arquivo.
> transformar duas colunas, com varias linhas, em varias colunas.
>
> $cat agua.mo.txt
> 1, Occupied
> 1 99,99
> 2 0,00
> 3 0,00
> 2, Occupied
> 1 93,02
> 2 3,49
> 3 3,49
> 3, Occupied
> 1 55,00
> 2 22,50
> 3 22,50
> 4, Occupied
> 1 91,04
> 2 4,48
> 3 4,48
> 5, Occupied
> 1 99,80
> 2 0,10
> 3 0,10
> 6, Virtual
> 1 48,40
> 2 25,80
> 3 25,80
> ...
> $
>
> gostaria de deixa-lo assim:
>
> $cat agua.plan.txt
> 1 2 3 4 5 6 ...
> 1 99,99 93,02 55,00 91,04 99,80 48,40 ...
> 2 0,00 3,49 22,50 4,48 0,10 25,80 ...
> 3 0,00 3,49 22,50 4,48 0,10 25,80 ...
> $
>
> A cada intervalo x de linhas, transformar estas em coluna!
> Retirando tambem as palavras Occupied e Virtual!!!
> Ai este novo arquivo seria aberto em uma planilha!
>
> Deu uma trabalhada, deixar do jeito inicial. Mas nao consegui modificar
> para ficar em colunas!
>
> O arquivo agua.plan.txt chega a ter mais de 100 linhas em cada coluna!
> E e tambem mais de 700 colunas!!!
>
> Se alguem puder me ajudar!
> Valeu!
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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