Ben şeklinde bazı çıktı var:
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
...
Bu oldukça dağınık ve bir CSV kadar temizlenmesi gerekiyor, bu yüzden onlar için bir proje yöneticisi için cehennemden elektronik tablo hediye edebilirsiniz.
Sorunun özü şudur: Bunun çıktısına ihtiyacım var:
id, sum_of_type_1, sum_of_type_2, sum_of_type_3
Bunun bir örneği id "4" dir:
14 4 | 3
15 4 | 1
253 4 | 2
19857 4 | 3
Bunun yerine şöyle olmalıdır:
4,15,253,19871
Ne yazık ki bu tür bir şey oldukça saçma, tüm hatları temiz ve CSV içine almayı başardım ama satırları tekilleştirip gruplayamadım. Şu anda bu var:
awk 'BEGIN{OFS=",";} {split($line, part, " "); print part[1],part[2],part[4]}' | awk '{ gsub (" ", "", $0); print}'
Ama tüm bu çöp karakterleri temizlemek ve satırları tekrar yazdırmak.
Satırları yukarıda belirtilen çıktıya masaj yapmanın en iyi yolu nedir?