You can try - Config::IniFiles too.

Thanks,
Shekar


On Tue, May 1, 2012 at 7:19 PM, Manfred Lotz <manfred.l...@arcor.de> wrote:

> On Tue, 1 May 2012 15:58:49 +0530
> Mohan L <l.mohan...@gmail.com> wrote:
>
> > On Tue, May 1, 2012 at 3:28 PM, Manfred Lotz <manfred.l...@arcor.de>
> > wrote:
> >
> > > Hi there,
> > > What is a recommended Module for processing config resp. inifile
> > > formats?
> > >
> > > One important feature I need is to use previously defined entries.
> > >
> > > Example:
> > >
> > > [General]
> > > base_dir : /somedir
> > >
> > > [Files]
> > > iso_image : ${base_dir}/x.iso
> > >
> > > lib : a.so
> > > lib : b2.so
> > >
> >
> > I am using Config::General - Generic Config Module.
> > http://search.cpan.org/dist/Config-General/General.pm
> >
> > Say for example :
> >
> > The below is DB related information in my configuration goes
> > <database> section :
> >
> > $ cat /etc/myconf.txt
> > <database>
> >         mysql_host      = localhost
> >         mysql_port      = 3306
> >         mysql_driver    = mysql
> >         mysql_database  = databasename
> >         mysql_username  = mysqluser
> >         mysql_password  = mysqlpassword
> >         mysql_socket    = socket path
> > </database>
> >
> > I am using the below code to parse configuration file.
> >
> > $cat myprog.pl
> >
> > my $conf_path = "/etc/myconf.txt";
> > my $conf   = Config::General->new($conf_path);
> > my %config = $conf->getall();
> > my %database = %{$config{database}};
> > my $mysql_host = $database{mysql_host};
> > my $mysql_port = $database{mysql_port};
> > my $mysql_driver = $database{mysql_driver};
> > my $mysql_database = $database{mysql_database};
> > my $mysql_username = $database{mysql_username};
> > my $mysql_password = $database{mysql_password};
> > my $mysql_socket   = $database{mysql_socket};
> >
> >
> > Thanks
> > Mohan L
> >
>
> Looks good, thanks. The package has an -InterPolateVars option which does
> it nicely.
>
> --
> Thanks again,
> Manfred
>
>
>
>
>
>
> --
> To unsubscribe, e-mail: beginners-unsubscr...@perl.org
> For additional commands, e-mail: beginners-h...@perl.org
> http://learn.perl.org/
>
>
>

Reply via email to