Perl XML: простое чтение пар xml и выполнение чего-либо для каждой из них

У меня есть файл XML, который содержит следующий раздел:

<cptasks>
 <copy file="file1.txt" to="folder1/folder21" />
 <copy file="file2.txt" to="folder1/folder33" />
 <copy file="file3.txt" to="folder1/folder4" />
 <copy file="file4.txt" to="folder1/folder1" />
</cptasks>

Мне нужно разобрать только пары file/to в этом конкретном разделе и запустить на них функцию - т.е.

some_func_name(<file_value>,<to_value>)

Как я могу это сделать?

Заранее спасибо;

1 ответ

Решение
use XML::Simple;
my $cptasks = XMLin(qq~
<cptasks>
<copy file="file1.txt" to="folder1/folder21" />
<copy file="file2.txt" to="folder1/folder33" />
<copy file="file3.txt" to="folder1/folder4" />
<copy file="file4.txt" to="folder1/folder1" />
</cptasks>
~
);


for my $copy (@{$cptasks->{copy}}) {
    some_func_name($copy->{file}, $copy->{to});
}
Другие вопросы по тегам