如何在linux框中使用linux脚本将CSV文件转换为XML格式

时间:2017-07-05 07:13:14

标签: linux

我需要将CSV文件转换为XML格式才能满足我的要求。 我是这个过程的新手。

我已经评论了一些链接: https://help.ubuntu.com/community/Converting%20CSV%20to%20XML

这里他们要求安装工具。 但我没有权利在服务器中安装任何工具。 所以我需要尝试使用任何Linux脚本来完成我的任务。

之前我使用xlsx2csv脚本将xlsx文件转换为csv。以同样的方式我试图获得脚本。

我试过https://gist.github.com/AnthonyNystrom/5547886 我无法自己读取输入文件。我正在尝试使用我们的linux服务器

任何人都可以帮我找到解决方案。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

有几种工具可以将csv转换为xml。那些可以为你做好工作。

此网站包含您可以使用的多种工具:https://help.ubuntu.com/community/Converting%20CSV%20to%20XML

来源:https://askubuntu.com/questions/581265/how-can-i-convert-a-csv-file-to-xml

答案 1 :(得分:0)

我尝试使用以下代码并将结果作为例外 我创建了一个shell脚本,并在下面的代码中添加了一个示例csv文件 sample.csv

id,name,age 1,Test,23 2,Testing,32 3,Cool, 23

csv2xml.sh

`#!/bin/bash
file_in="sample.csv"
file_out="sample.xml"
echo '<?xml version="1.0"?>' > $file_out
echo '<Customers>' >> $file_out
while IFS=$',' read -r -a arry
do
echo '  <Customer>' >> $file_out
echo '    <Name>'${arry[0]}'</Name>' >> $file_out
echo '    <Age>'${arry[1]}'</Age>' >> $file_out
echo '    <Country>'${arry[2]}'</Country>' >> $file_out
echo '  </Customer>' >> $file_out
done < $file_in
echo '</Customers>' >> $file_out`

如果我们运行上面的脚本,我们将获得一个sample.xml文件。 甚至我们可以根据要求改变格式。 感谢您的支持。