나는 다음과 같은 형태의 출력을 가지고있다 :
count id type
588 10 | 3
10 12 | 3
883 14 | 3
98 17 | 3
17 18 | 1
77598 18 | 3
10000 21 | 3
17892 2 | 3
20000 23 | 3
63 27 | 3
6 3 | 3
2446 35 | 3
14 4 | 3
15 4 | 1
253 4 | 2
19857 4 | 3
1000 5 | 3
...
어느 것이 지저분하고 CSV로 정리해야하므로 프로젝트 관리자에게 선물로 선물 할 수 있습니다.
문제의 핵심은 이것입니다 : 나는 이것의 출력이 필요합니다 :
id, sum_of_type_1, sum_of_type_2, sum_of_type_3
이에 대한 예는 id "4"입니다.
14 4 | 3
15 4 | 1
253 4 | 2
19857 4 | 3
대신 다음과 같아야합니다.
4,15,253,19871
불행히도 나는 이런 종류의 일에 꽤 쓰레기입니다. 모든 줄을 정리하고 CSV로 만들었지 만 행을 중복 제거하고 그룹화 할 수 없었습니다. 지금 나는 이것을 가지고있다 :
awk 'BEGIN{OFS=",";} {split($line, part, " "); print part[1],part[2],part[4]}' | awk '{ gsub (" ", "", $0); print}'
그러나 모든 것은 쓰레기 문자를 정리하고 행을 다시 인쇄하는 것입니다.
행을 위에서 언급 한 출력으로 마사지하는 가장 좋은 방법은 무엇입니까?