Здесь много движущихся кусочков.То, что «легче читать», предстает перед глазами.
Тем не менее, вы выиграете от использования XML :: Twig , который позволит вам работать с XML так, как вы хотите. \
Обновление: начните с самого простого сценария:
#!/usr/bin/perl
use warnings; use strict;
use XML::Twig;
foreach my $xml_file (@ARGV) {
my $twig = XML::Twig->new;
$twig->parsefile($xml_file);
$twig->print;
}
И соберите оттуда.