2013-07-18 61 views
0

我使用xmlstarlet從web.xml中選擇值。它不工作並且什麼也不返回。 如果我的web.xml中包含以下屬性:使用xmlstarlet從web.xml中選擇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

我用下面,併成功

xml sel -N x="http://java.sun.com/xml/ns/j2ee" -t -v "x:web-app/x:security-role" /root/WEB-INF/web.xml 
0

如果你有1.5.0版本,默認命名空間(java.sun.com/xml/ns/j2ee在這種情況下)被自動添加前綴_,所以-N不需要:

xml sel -t -v "_:web-app/_:security-role" /root/WEB-INF/web.xml