Say you have a script called foo and a file of configuration options called foo.xml containing this:

10.0.0.101
10.0.1.101
10.0.0.102
10.0.0.103
10.0.1.103
##
## use XML::Simple; my $config = XMLin(); #### use Data::Dumper; print Dumper($config); #### { 'logdir' => '/var/log/foo/', 'debugfile' => '/tmp/foo.debug', 'server' => { 'sahara' => { 'osversion' => '2.6', 'osname' => 'solaris', 'address' => [ '10.0.0.101', '10.0.1.101' ] }, 'gobi' => { 'osversion'Does that seem like what => '6.5', 'osname' => 'irix', 'address' => '10.0.0.102' }, 'kalahari' => { 'osversion' => '2.0.34', 'osname' => 'linux', 'address' => [ '10.0.0.103', '10.0.1.103' ] } } } #### print $config->{logdir}; #### print $config->{server}->{kalahari}->{address}->[1];