[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Concatenar colunas de arquivos diferentes
From: |
Marcio Ramiro |
Subject: |
Re: [shell-script] Concatenar colunas de arquivos diferentes |
Date: |
Thu, 21 Aug 2003 15:49:42 -0300 |
Marcio Ramiro gravada:
> gostaria de sair da lista
>
> Aurelio Marinho Jargas gravada:
>
> > oi luis,
> >
> > --- "Okama, Luis" <address@hidden> escreveu:
> > > e ae Aurelio, ele na verdade quer "verticalizar" os dados :))
> > > mandei 2 solucoes pra ele em pvt, ele esta testando :)
> > > o q ele quer seria mais ou menos isso:
> > >
> > > file1:
> > > hdisk1;1;2;3;4;5
> > > seq2...
> > >
> > > file2:
> > > hdsik2;a;b;c;d;e
> > > seq2...
> > >
> > > arquivofinal:
> > > hedisk1;hdisk2
> > > 1;a
> > > 2;b
> > > 3;c
> > > 4;d
> > > 5;e
> > > ... continua seq2
> >
> > mmmmmm, agora melhorou!
> >
> > uma solução é primeiro juntar todas as
> > centenas de arquivos em apenas um,
> > depois trabalhar nele.
> >
> > os arquivos de teste:
> >
> > $ cat lixo1
> > hdisk1;1;2;3;4;5
> > hdisk1;6;7;8;9;10
> >
> > $ cat lixo2
> > hdisk2;a;b;c;d;e
> > hdisk2;f;g;h;i;j
> >
> > a primeira ação é transformar cada arquivo em uma grande e
> > longa linha:
> >
> > $ paste -d';' -s lixo1 lixo2
> > hdisk1;1;2;3;4;5;hdisk1;6;7;8;9;10
> > hdisk2;a;b;c;d;e;hdisk2;f;g;h;i;j
> >
> > depois, tirar os 'hdiskN' do meio das linhas:
> >
> > $ paste -d';' -s lixo1 lixo2 | sed 's/;hdisk[0-9]*;/;/g'
> > hdisk1;1;2;3;4;5;6;7;8;9;10
> > hdisk2;a;b;c;d;e;f;g;h;i;j
> >
> > agora basta transformar linhas em colunas. coloquei a saÃda
> > do comando anterior num arquivão chamado 'lixo'.
> >
> > agora com o cut extraimos cada coluna e com o paste essas
> > colunas viram linhas, obtendo o resultado desejado:
> >
> > $ for i in 1 2 3 4 5; do cut -d';' -f$i lixo | paste -d';' -s ; done
> > hdisk1;hdisk2
> > 1;a
> > 2;b
> > 3;c
> > 4;d
> >
> > é, até que ficou legal :)
> >
> > =====
> > --
> > Aurelio Marinho Jargas - Floripa
> > Veja como foi o Curso de Shell http://aurelio.net/curso/4linux.html
> > Foto do meu escritorio http://aurelio.net/imagens/escritorio.jpg
> > Participe de um projeto GNU http://br.groups.yahoo.com/group/txt2tags-br/
> >
> > _______________________________________________________________________
> > Desafio AntiZona - Um emocionante desafio de perguntas e respostas que
> > te dá um Renault Clio, kits de eletrônicos, computadores, notebooks e
> > mochilas. Cadastre-se, participe e concorra!
> > www.cade.com.br/antizona
> >
> > ---------------------------------------------------------------------
> > Esta lista não admite a abordagem de outras liguagens de programação, como
> > perl, C etc. Quem insistir em não seguir esta regra será moderado sem
> > prévio aviso.
> > ---------------------------------------------------------------------
> > Sair da lista: address@hidden
> > ---------------------------------------------------------------------
> > Esta lista é moderada de acordo com o previsto em
> > http://www.listasdiscussao.cjb.net
> > ---------------------------------------------------------------------
> >
> >
> > Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
> > http://br.yahoo.com/info/utos.html
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listasdiscussao.cjb.net
> ---------------------------------------------------------------------
>
>
> Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
> http://br.yahoo.com/info/utos.html
[As partes desta mensagem que não continham texto foram removidas]