输入(在文件中)如下所示-

IndexName      ColumnName
Ind1           Col1
Ind1           Col2
Ind2           Col3


现在如何使用linux生成下面的输出,请sed或awk或其他内置函数-

IndexName      ColumnName
Ind1           ("Col1","Col2")
Ind2           ("Col3")


谢谢 ,

最佳答案

我确定这是一些丑陋的awk,可以写得更优雅些。另外,为便于记录,这更多是“字符串聚合”,而更少“移调”。

awk -v quote='"' 'NR==1{print $0}NR>1{a[$1]=a[$1]","quote$2quote}END{for (ind in a){print ind, "("substr(a[ind], 2, length(a[ind])-1)")"}}'

09-07 23:57