在bash脚本中存储xml数据

时间:2016-08-10 20:31:51

标签: xml bash curl

我有一个bash脚本,它将xml数据卷曲到一个URL。 xml数据当前是一个单独的xml文件,该方案中的所有内容都可以正常工作。我想获取xml文件的内容,将其粘贴到bash脚本中,然后使用curl传递该数据。我要问的是,基本上,你如何将bml数据分配给bash中的变量?

1 个答案:

答案 0 :(得分:0)

您可以使用here-doc。如curl文档中所述:

  

如果您使用字母@启动数据,其余部分应该是用于读取数据的文件名,或者-如果您希望curl从stdin读取数据。

curl -v -H "Content-type: application/xml" --user u:p -X PUT --data @- "http://..." <<EOF
<?xml version="1.0" standalone="yes"?>
<root>
  <artifact>
    <a>1.zip</a>
    <b>2-SNAPSHOT.zip</b>
    <c>3-SNAPSHOT.zip</c>
  </artifact>
  <artifact>
    <a>4.tar</a>
    <b>5.tar</b>
    <c>6.tar</c>
  </artifact>
</root>
EOF

here here-doc允许你在脚本中提供stdin。