【发布时间】:2017-10-14 01:11:06
【问题描述】:
我正在尝试使用 awk 匹配字段后获取下一个字段。
是否有一个选项可以做到这一点,还是我需要将记录扫描到数组中,然后检查数组中的每个字段并在之后打印一个?
<domain-controller>
<remote host="${jboss.domain.master.address}" port="${jboss.domain.master.port:9999}" security-realm="ManagementRealm"/>
</domain-controller></pre>
我只想要 9999 作为输出。
awk '{for(i=1;i<=NF;i++)if($i~/master.address/)print $(i+1)}' failed
【问题讨论】:
-
你为什么用
Awk解析XML文件?为什么不xmlstarlet或xmllint? -
如果您有其他解决方案,那会很有帮助
-
从根节点提供完整的
XML文件 -
我没有完整的 xml 文件,我只是从示例文件中得到了几行。我只想 grep 端口号 9999 作为文件的输出