Obrigado pela sugestão. att, FH
2012/11/29 <jmhenri...@yahoo.com.br> > ** > Um jeito bem porco (um pouco didatico, porem} q me vem a mente agora: > > echo -e "Animal\tGenotipo" > awk '{print $1}' entrada.txt | sort -u | grep -v Animal | while read linha > do > echo -ne "$linha\t" > grep "^$linha" entrada.txt | awk '{ print $2 } | perl -pe "s/\n//g" > echo > done > > Isso deve funcionar (acho, dependendo de como o seu problema pode ser.... > Se a ordem importa, se ele devera manter ou não os genotipos repetidos, se > somente existem 4 genotipos, > Etc etc etc.) > Usei perl e awk, mas você poderia usar cut e sed. > > Usando perl puro ou awk puro ou qqr coisa "pura" deve ficar mais elegante. > Enviado pelo meu aparelho BlackBerry® > ------------------------------ > *From: * FHRB Toledo <fernandohtol...@gmail.com> > *Date: *Thu, 29 Nov 2012 21:18:36 -0200 > *To: *DUP<debian-user-portuguese@lists.debian.org> > *Subject: *dúvida shell > > Senhores, > > Resolvi esse problema com o programa R, mas queria ter uma idéia de como > fazer isso no shell... > > Segue a problema: > > Tenho um arquivo que se chama entrada.txt, com o seguinte formato > > Animal Genotipo > ab5412 AA > ab5412 AB > ab5412 BB > ab5412 BA > ab5412 BB > ab5454 AA > ab5454 AB > ab5454 BB > ab5454 BA > ab5454 BB > > Ao final preciso de um arquivo saída com no formato: > > Animal Genotipo > ab5412 AAABBBBABB > ab5454 AAABBBBABB > ... > > Ou seja, preciso capturar a segunda coluna de entrada e concatenar esses > valores usando a coluna animais como índice! > > Não fiz nada ainda que preste, apenas sei que $ cut -f2 entrada.txt > captura a segunda coluna... E aí, alguma dica? > > Caso alguém tenha uma solução que apenas reorganize entrada.txt sem > concatenar esses valores em uma string só já está ótimo! > > Qualquer sugestão é bem vinda! > > Att, > FH > >