Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在unix shell脚本中将包含key=value格式数据的文件转换为csv文件?_Shell_Unix_Csv - Fatal编程技术网

如何在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