Отображать определенные поля из строки для повторяющихся значений в столбце

i / p -

1234505403650,1234505403650,1,XYZ,0,,
1234525941210,1234525941210,1,XYZ,0,,
1234505577168,1234505577168,1,XYZ,0,,
1234518552859,1234518552859,1,XYZ,0,,
1234518552859,1234518552859,1,RTB,0,20200818153307,20200819153307
1234513321215,1234513321215,1,XYZ,0,,
1234523098739,1234523098739,1,XYZ,0,,
1234500964747,1234500964747,1,XYZ,0,,
1234500964747,1234500964747,1,ABC,0,,

ожидается o / p -

1234518552859,XYZ,RTB
1234500964747,XYZ,ABC

Необходимо идентифицировать повторяющиеся записи из первого поля и отображать <повторяющаяся запись>, < поле 4> из всех строк, соответствующих повторяющейся записи

0
задан 19 August 2020 в 20:58

1 ответ

Вы можете использовать awk :

$ awk -F, '
    BEGIN {OFS=FS} 
    {a[$1] = a[$1] == "" ? $4 : a[$1]","$4; c[$1]++} 
    END {for(i in a){if (c[i]>1) print i,a[i]}}
' file
1234518552859,XYZ,RTB
1234500964747,XYZ,ABC
1
ответ дан 21 August 2020 в 07:54

Другие вопросы по тегам:

Похожие вопросы: