如何在xml文件中拆分和添加新行分隔符(使用linux bash)
我有以下xml文件。实际上,我在建造它的时候犯了一个错误。我没有在查询结束后添加新行。我可以在linux中使用什么命令来修改它如何在xml文件中拆分和添加新行分隔符(使用linux bash),xml,linux,bash,Xml,Linux,Bash,我有以下xml文件。实际上,我在建造它的时候犯了一个错误。我没有在查询结束后添加新行。我可以在linux中使用什么命令来修改它 </query><query id="..."> ^ split here. add new line delimiter </query> <query id="..."> 输入 输出 谢谢。试试这句话: xmllint --format your.xml 如
</query><query id="...">
^ split here. add new line delimiter
</query>
<query id="...">
输入
输出
谢谢。试试这句话:
xmllint --format your.xml
如果只是添加换行符,那么
sed -i -e 's#</query><query#</query>\n<query#' file.xml
如果要在结束标记后换行,可以使用以下sed命令:
告诉我你怎么看@Kent sed-e's/>\n@HaniGoc如果您的输入是格式良好的xml,并且有xml方法来处理它,那么不要使用sed/awk/grep/。。。。。如果换行符对您很重要,我认为缩进可能在相同的情况下。塞德的替换将破坏压痕。你必须自己调整。好的,我知道了。当xml格式良好时,最好使用专用工具。OK@HaniGoc也许你喜欢sed的回答。它对你的输入有效。但它不应用于处理XML文件。如果XML文件有一个包含
xmllint --format your.xml
sed -i -e 's#</query><query#</query>\n<query#' file.xml
xmllint --format file.xml > newfile.xml
sed "s/<\/query>/<\/query>\n/g" input.xml