【发布时间】:2017-04-16 20:32:12
【问题描述】:
我有一个巨大的 XML 文件,需要更改我知道的一行上方的 100 行。
<errorCode>4544</errorCode>
<severity>4</severity>
<modelDescription>Licensing: Invalid license</modelDescription>
我想查找“许可:无效的许可”并更改其上方的“4”或任何其他数字。
我正在尝试做类似的事情:
sed -i '/Invalid license/{n;s/4/6/;}' file
但它不起作用。有什么建议我可以如何 grep 模式然后更改它上面的值?
【问题讨论】:
-
请不要使用“巨大”之类的词。使用数字(毕竟我们是工程师)。这很可能会影响答案。
标签: xml bash shell sed xml-parsing