有以下config.xml文件(该文件来自源存储库,我无法在自动化过程中更改;我可以更改构建过程,因此有关如何提取两个属性的想法,androidversionCode和iosCFBundleVersion会不胜感激。
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.company.project" version="1.2.8" androidversionCode="209" iosCFBundleVersion="209" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>Project name</name>
<description>Project description</description>
</widget>
我尝试了什么:
$ xmllint --xpath "string(//widget/@id)" config.xml
仅在xmlns =&#34; http://www.w3.org/ns/widgets"从文件中删除。如果我设置xmlns =&#34;&#34;然后它也有效,但我发现没有其他情况它将返回id或任何版本代码。所以,xmlns =&#34;某事&#34;使xpath失败,对吧?
如何使这项工作并获取这些版本号?
答案 0 :(得分:0)
决议是:
xmllint --xpath 'string(//*[local-name()="widget"]/@id)' config.xml