我正在尝试使用xmlstarlet将.xml转换为.csv。我的文件名是test.xml。.xml数据是这样的:
<?xml version = '1.0' encoding = 'UTF-8'?>
<ws_export xmlns="http://ws_export.ws.localhost/">
<Records>
<item>
<CodIO>02360236</CodIO>
<DescIO>023608 SAP- Stazione</DescIO>
</item>
</Records>
</ws_export>
字符串
我看过一个例子here,但是这个例子中的.xml文件的id是渐进数字。
我尝试了一些像这样的bash命令:
xmlstarlet \
sel -T -t -m /Records/item\
-v "concat(CodIO,';',DescIO)" \
-n test.xml > test.csv
型
理论上,它应该生成一个.csv文件,其中包含“CodIO,DescIO”列。但它根本不起作用,我在bash语法中犯了一个明显的错误,但由于我的知识有限,我无法精确定位它。你能帮帮我吗?
编辑以添加我想要的输出:
测试.csv文件,列为:
CodIO、DescIO
1条答案
按热度按时间3pmvbmvn1#
好了,在改进了我的xml-foo之后,我已经提出了一个bash,它可以工作并产生我想要的东西:
字符串
基本上,我所要做的就是列出所有列的名称,以及一个语法正确的分隔符,并声明我在第一次尝试中没有正确的WS操作。