Thread XML::Twig
(4 answers)
Opened by Gast at 2007-12-05 17:32
ich bin zwar auch noch nicht lange mit XML::Twig am arbeiten aber von der herangehensweise liegt es mir mehr als andere, daher setze ich mich damit auseinander ... nur als warnung deshalb, mein code ist sicher nicht der optimalste ;)
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 #!/usr/bin/perl -w use strict; use XML::Twig; my $twig = new XML::Twig( TwigRoots => { 'server' => \&output_srv }); $twig->parsefile("myfile.xml"); sub output_srv { my( $tree, $elem ) = @_; my $status = $elem->att('status') . "\n"; my $hostname = $elem->findvalue('hostname') || ''; my $os = $elem->findvalue('rules/rule[@name="os"]') || ''; print "Host: $hostname Status: $status OS: $os\n"; } gets the job done. allerdings solltest du wohl möglich austesten, ob nicht mehrere hostname-elemente etc vorkommen können, falls das nicht generell ausgeschlossen werden kann. |