📅  最后修改于: 2023-12-03 15:35:48.059000             🧑  作者: Mango
xsltproc
是一个基于 XSLT 转换的命令行工具,可用于提取和转换 XML 文档中的数据。
以下示例演示了如何使用 xsltproc
提取 XML 属性:
<!-- 原始 XML 文档 -->
<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="en">Harry Potter</title>
<author>J.K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="web">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
<!-- XSLT 文件 -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="//book">
<xsl:value-of select="@category" />
<xsl:text>|</xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
# 执行命令
$ xsltproc test.xslt test.xml
输出结果:
cooking|children|web|
以下是 xsltproc
的基本语法:
$ xsltproc [选项] XSLT_FILE XML_FILE
其中 XSLT_FILE
是 XSLT 文件的名称,XML_FILE
是要转换的 XML 文件的名称。
以下是 xsltproc
的常用选项:
-o, --output [FILE]
:指定输出文件的名称(默认为标准输出)。--html
:将结果输出为 HTML 格式。--param name value
:传递参数到 XSLT 文件中。name
和 value
分别是参数的名称和值。--stringparam name value
:与 --param
相同,但是值必须是字符串。-v, --verbose
:输出详细信息。xsltproc
是一个功能强大且易于使用的命令行工具,可用于提取和转换 XML 文档中的数据。它支持各种选项和参数,使其适用于多种转换任务。