我正在使用xmlstarlet从web.xml中选择值。它没有工作,什么也没有返回。 如果我的web.xml包含以下属性:
<web-app version="2.4"
xmlns="java.sun.com/xml/ns/j2ee"
xmlns:xsi="w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="java.sun.com/xml/ns/j2ee java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
命令我正在执行
xml select -t -v "web-app/display-name" web.xml
我如何忽略上述内容?
答案 0 :(得分:2)
如果您的版本为1.5.0,则默认命名空间(在本例中为java.sun.com/xml/ns/j2ee
)会自动赋予前缀_
,因此不需要-N
:
xml sel -t -v "_:web-app/_:security-role" /root/WEB-INF/web.xml
答案 1 :(得分:0)
我使用了以下内容并成功
xml sel -N x="http://java.sun.com/xml/ns/j2ee" -t -v "x:web-app/x:security-role" /root/WEB-INF/web.xml