2012-11-29 6 views
4

행에 열을 트랜스을 AWK를 사용 :I는 입력 데이터 파일이

anim gent 
FZ543  1 
FZ543  2 
FZ543  3 
FZ543  1 
FZ547  4 
FZ547  3 
FZ547  3 
FZ547  1 

내가 이러한 데이터를 트랜스 싶어 - 즉

anim  gent 
FZ543  1 2 3 1 
FZ547  4 3 3 1 

을, 나는에서 요소를 바꾸어 싶어 수평으로 수직. AWK Comand를 사용할 수 있습니다.

감사합니다.

+0

. 너 awk을 배우려고? 사용 가능한 유일한 프로그램입니까? – GargantuChet

+0

http://docstore.mik.ua/orelly/unix/sedawk/ch13_09.htm 또는 도움이되지 않습니까? –

답변

4
awk 'NR==1{print} NR>1{a[$1]=a[$1]" "$2}END{for (i in a){print i " " a[i]}}' file 

OUTPUT

anim gent 
FZ543 1 2 3 1 
FZ547 4 3 3 1 
2
$ awk '$1 != prev{printf "%s%s",ors,$1; ors=ORS; ofs="\t"} {printf "%s%s",ofs,$2; ofs=OFS; prev=$1} END{print ""}' file 
anim gent 
FZ543 1 2 3 1 
FZ547 4 3 3 1 
더 컨텍스트를 제공하기 위해 도움이 될 수 있습니다
관련 문제