#!/usr/bin/perl use warnings; use strict; use Data::Dumper; my @LITERALS = ( # this is equivalent to \%H00 { "--system" => 'Apache', "--slinks" => [ { "--link" => "/etc/httpd/SSL", "--fold" => "/usr/local/private/QA/apache/SSL", }, { "--link" => "/etc/httpd/conf/httpd.conf", "--file" => "/usr/local/private/QA/apache/conf/httpd.conf", }, { "--link" => "/etc/httpd/conf.d/httpd.conf", "--file" => "/usr/local/private/QA/apache/conf.d/nagios.conf", }, ], }, # this is equivalent to \%H01 { "--system" => 'Logrotate', "--slinks" => [ { "--link" => "/etc/logrotate.d/nagios", "--file" => "/usr/local/private/QA/logrotate/nagios", }, ], }, ); print <<"EOT"; Example: --file of 2nd --slinks of 1st LITERAL (--system is Apache) is: $LITERALS[0]->{"--slinks"}->[1]->{"--file"} EOT print Dumper(\@LITERALS); __DATA__ Example: --file of 2nd --slinks of 1st LITERAL (--system is Apache) is: /usr/local/private/QA/apache/conf/httpd.conf $VAR1 = [ { '--slinks' => [ { '--fold' => '/usr/local/private/QA/apache/SSL', '--link' => '/etc/httpd/SSL' }, { '--file' => '/usr/local/private/QA/apache/conf/httpd.conf', '--link' => '/etc/httpd/conf/httpd.conf' }, { '--file' => '/usr/local/private/QA/apache/conf.d/nagios.conf', '--link' => '/etc/httpd/conf.d/httpd.conf' } ], '--system' => 'Apache' }, { '--slinks' => [ { '--file' => '/usr/local/private/QA/logrotate/nagios', '--link' => '/etc/logrotate.d/nagios' } ], '--system' => 'Logrotate' } ];