我有下面的XML:使用XML解析器获取从XML元素的值,并将其分配给一个变量
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>BundleResourceDeploy</groupId>
<artifactId>Project3</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>sbar</packaging>
<description></description>
</project>
另外我有以下XSLT样式表:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns="http://maven.apache.org/POM/4.0.0" exclude-result-prefixes="ns">
<xsl:output method="xml" omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="ns:project">
<xsl:element name="ns:groupId">
<xsl:value-of select="ns:groupId"/>
</xsl:element>
<xsl:element name="ns:artifactId">
<xsl:value-of select="ns:artifactId"/>
</xsl:element>
<xsl:element name="ns:version">
<xsl:value-of select="ns:version"/>
</xsl:element>
<xsl:element name="ns:packaging">
<xsl:value-of select="ns:packaging"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
执行命令:xsltproc的“样式表”, “XML_FILE”>的Output.xml
输出(的Output.xml文件的内容)为:
<ns:groupId xmlns:ns="http://maven.apache.org/POM/4.0.0">BundleResourceDeploy</ns:groupId><ns:artifactId xmlns:ns="http://maven.apache.org/POM/4.0.0">Project2</ns:artifactId><ns:version xmlns:ns="http://maven.apache.org/POM/4.0.0">1.0-SNAPSHOT</ns:version><ns:packaging xmlns:ns="http://maven.apache.org/POM/4.0.0">sbar</ns:packaging>
我想实现的是: 在一个shell脚本中,我想要获取元素“groupId”的值,该值为“BundleResourceDeploy”,并将其分配给一个变量。
你能帮我解决这个问题吗?
的xmlsh工具是另一种可能性看 –