我正在使用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
我怎么能忽略上面的内容?
如果您有1.5.0版本,默认名称空间(在本例中为java.sun.com/xml/ns/j2ee
)会自动指定前缀_
,因此不需要-N
:
xml sel -t -v "_:web-app/_:security-role" /root/WEB-INF/web.xml
我使用了以下内容并成功地完成了
xml sel -N x="http://java.sun.com/xml/ns/j2ee" -t -v "x:web-app/x:security-role" /root/WEB-INF/web.xml