Мой голос - использовать синтаксический анализатор XML, а не пытаться объединить данные XML в виде простого текста. К сожалению, пакетный язык не предлагает много возможностей для анализа XML. PowerShell делает, однако. Вот пример скрипта PowerShell, который будет читать все файлы * .xml и клонировать их содержимое в объект XML, сохраняя его в конце в файле с именем join.xml:
# File to save:
$outfile = "joined.xml"
# create an XML object with a single empty container node
$x = [xml]"<root></root>"
# Delete previous export if exists to avoid cumulative runs
if (test-path $outfile) { del $outfile }
# For each XML file...
gci *.xml | %{
# Read the contents and cast as an XML object. Then for each root node...
([xml](gc $_)).selectNodes("/*") | %{
# Clone the node and its descendants into our XML object's container node.
[void]$x.selectSingleNode("/root").AppendChild($x.ImportNode($_, $true))
}
}
# Finally, save the resulting XML data to a file.
$x.Save($outfile)