我想使用linux命令解析servers.xml中的值模式。
条件
变量模式必须有效,这意味着它不应该在注释中
<!--- comments -->
如果变量在注释中,则解析器不应返回任何内容。
PFB xml
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %t %m %U %q %s %b %D %{X-Forwarded-For}i " />
答案 0 :(得分:0)
试试这个。
cat server.xml | sed '/<!--.*-->/d'| sed '/<!--/,/-->/d' | awk '/pattern/ {print $2}' FS='"'
首先,我们删除评论,然后查找pattern
的值。
答案 1 :(得分:0)
民间。
请试试这个
这对我有用
xmlstarlet el -v server.xml | grep -w @pattern | awk -F'=' '{print $(NF)}' | sed 's/]//g