Wan*_*ick 4 linux bash shell awk
是否可以将awk
相同键的值用于一行?例如
a,100
b,200
a,131
a,102
b,203
b,301
Run Code Online (Sandbox Code Playgroud)
我可以将它们转换为这样的文件:
a,100,131,102
b,200,203,301
Run Code Online (Sandbox Code Playgroud)
你可以像这样使用awk:
awk -F, '{a[$1] = a[$1] FS $2} END{for (i in a) print i a[i]}' file
a,100,131,102
b,200,203,301
Run Code Online (Sandbox Code Playgroud)
我们使用-F,
逗号作为分隔符并使用数组a
来保持聚合值.
参考: 有效的AWK编程