我的文字文件如下所示
id, key, value
i1, k1, v1
i1, k2, v2
i1, k2, v3
我需要在group by
上操作<id, key>
并拥有一个自定义函数,该函数表示concats所有值。因此产生的输出看起来像
id, key, value
i1, k1, v1
i1, k2, v2||v3
我们如何在unix中实现这一目标?
答案 0 :(得分:1)
如果你有awk:
awk -F, '{k=$1FS$2;a[k]=(k in a)?a[k]"||"$3:$3}END{for(x in a)print x FS a[x]}' file
id, key, value
i1, k1, v1
i1, k2, v2|| v3