我有一个包含mysql表名及其列名的文件。我想转换成以下格式
文件:example.txt

Table Name        | Column Name
   ABC            |    123
   ABC            |    345
   XYZ            |    111
   FFF            |    222
   FFF            |    333
   FFF            |   4444

输出应该是
ABC(123,345)
XYZ(111)
FFF(222,333,4444)

请给我举个例子。

最佳答案

$ cat t.awk
#!/usr/bin/awk -f

BEGIN { FS="[ \t|]+" }
NR>1 { a[$1]=a[$1]$2"," }
END {
    for (i in a)
        printf "%s(%s)\n", i, substr(a[i], 0, length(a[i])-1)
}

$ ./t.awk example.txt
ABC(123,345)
XYZ(111)
FFF(222,333,4444)

10-07 16:29