如何从命令行取消注释 xml 节点?
选择所需节点的正则表达式类似于:
<!--\s*<env-entry>(.*\s*)*</env-entry>\s*-->
xml 文件包含的位置:
<!--
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/put/your/solr/home/here</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
-->
<!--
<other-entry>
</other-entry>
-->
如何取消注释所选节点(可能使用 sed/awk)?
The regex to select the desired node would be something like:
<!--\s*<env-entry>(.*\s*)*</env-entry>\s*-->
where the xml file contains:
<!--
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/put/your/solr/home/here</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
-->
<!--
<other-entry>
</other-entry>
-->
How do I uncomment the selected node (probably with sed/awk)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个粗略的解决方案,它可能在极端情况下存在错误,因此请仔细测试:
更新:我忘记提及该解决方案在 AWK 中,以防万一。
Here is a crude solution, it might have bugs at corner cases, so test it out carefully:
UPDATE: I forgot to mention the solution is in AWK, just in case.