我有一个xml文件,如下所示
<Rows>
<row>
<name>peter</name>
<id>345</id>
</row>
<row>
<name>matt</name>
<id>567</id>
</row>
</Rows>
i have achieved adding a sub element to this file like below:
<Rows>
<row>
<name>peter</name>
<id>345</id>
</row>
<row>
<name>matt</name>
<id>567</id>
</row>
<row>
<name>mano</name>
<id>897</id>
</row>
</Rows>
问题是添加的元素与其他元素并不完全同步。我期待与其他人相同的语法(对齐)
代码试过:
element="\t<row>\n\t <name>NewName</name>\n\t <id>NewID</id>\n\t</row>"
C=$(echo $element | sed 's/\//\\\//g')
echo "after C"
sed "/<\/rows>/ s/.*/${C}\n&/" filename
请协助。
答案 0 :(得分:0)
最简单的答案可能是插入没有缩进的记录,然后使用 xmllint --format 来清理事实。建议的解决方案还可以提供对您非常有用的错误检查。