如何在 unix 中更改文件中的空 xml 标签

如何在 unix 中更改文件中的空 xml 标签

我在 unix 服务器中有一个 XML 文件。我想更改一个文件,例如:

所有空标签都必须替换,如下例所示。这只是一个例子,文件可以有任意数量的不同名称的空标签。

    <abc/>         
    <xyz>38475938994</xyz>
    <def/>
    to below file
    <abc></abc>
    <xyz>38475938994</xyz>
    <def></def>

答案1

sed方法:

sed -E 's#<([^/ ]+)/>#<\1></\1>#g' file.xml

输出:

<abc></abc>         
<xyz>38475938994</xyz>
<def></def>

相关内容