加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在xmlstarlet XPath中使用XML命名空间?

发布时间:2020-12-16 22:41:20 所属栏目:百科 来源:网络整理
导读:目前我正在编辑 XML文件.当我写命令 xml ed -u "/project/version" -v "2.7.13-NEW-SNAPSHOT" pom.xml ./pom_new.xml 它写了新的xml文件,但是当我打开文件时,nothings在其中发生了变化. 下面是给定xml的一部分,我想编辑: ?xml version="1.0" encoding="UTF-
目前我正在编辑 XML文件.当我写命令

xml ed -u "/project/version" -v "2.7.13-NEW-SNAPSHOT" pom.xml > ./pom_new.xml

它写了新的xml文件,但是当我打开文件时,nothings在其中发生了变化.

下面是给定xml的一部分,我想编辑:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>com.groupID.test</groupId>
    <artifactId>test-api-parent-pom</artifactId>
    <version>2.7.13-SNAPSHOT</version>
    <packaging>pom</packaging>
    <name>test-api-parent-pom</name>
    ...
    ...
</project>

有什么想法吗?

解决方法

如果使用-N p = http://maven.apache.org/POM/4.0.0考虑文档的命名空间,则xmlstarlet命令将起作用:

xml ed -N p=http://maven.apache.org/POM/4.0.0 -u "/p:project/p:version" -v "2.7.13-NEW-SNAPSHOT" pom.xml > ./pom_new.xml

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读