如何在unix shell脚本中将包含key=value格式数据的文件转换为csv文件?
我有一个以下格式的输入文件:如何在unix shell脚本中将包含key=value格式数据的文件转换为csv文件?,shell,unix,csv,Shell,Unix,Csv,我有一个以下格式的输入文件: (key1=value1,key2=value2,key3=value3) (key1=value4,key2=value5,key3=value6) 我想将此文件转换为csv文件,如: key1,key2,key3 value1,value2,value3 value4,value5,value6 如何在shell脚本中执行此操作?您可以使用此awk处理此文件: awk -F'[=(),]' -v OFS=, 'NR==1{for (i=2; i<NF;
(key1=value1,key2=value2,key3=value3)
(key1=value4,key2=value5,key3=value6)
我想将此文件转换为csv文件,如:
key1,key2,key3
value1,value2,value3
value4,value5,value6
如何在shell脚本中执行此操作?您可以使用此
awk
处理此文件:
awk -F'[=(),]' -v OFS=, 'NR==1{for (i=2; i<NF; i+=2) printf "%s%s", $i, (i<NF-2)?OFS:ORS}
{for (i=3; i<=NF; i+=2) printf "%s%s", $i, (i<NF-2)?OFS:ORS}' input
key1,key2,key3
value1,value2,value3
value4,value5,value6
awk-F'[=(),]'-vofs=,'NR==1{for(i=2;i