--- On Tue, 8/5/08, sonika tyagi <[EMAIL PROTECTED]> wrote:

> From: sonika tyagi <[EMAIL PROTECTED]>
> Subject: Re: [ilugd] Perl script errors - parsing config file
> To: [EMAIL PROTECTED], "The Linux-Delhi mailing list" 
> <ilugd@lists.linux-delhi.org>
> Date: Tuesday, August 5, 2008, 6:37 PM
> Hi,
> 
> You'll have to make some changes in your script. Those
> have been highlighted
> in blue and red color below.
> It'll run now.
> Cheers
> Sonika
> 
> On Wed, Aug 6, 2008 at 7:59 AM, Sudeep Sharma
> <[EMAIL PROTECTED]> wrote:
> 
> > Hello All,
> >
> > I have copied this script from this url which solves
> one of my purpose of
> > parsing a config file. Here is the URL
> >
> http://www.motreja.com/ankur/examplesinperl/parsing_config_files.htm
> >
> > Now when I am running the script I am getting these
> errors:
> > Use of uninitialized value in pattern match (m//) at
> config_parser.pl line
> > 26.
> > Use of uninitialized value in split at
> config_parser.pl line 27.
> > Use of uninitialized value in hash element at
> config_parser.pl line 28.
> >
> > Here is the copy of script, may be there is something
> which I am not doing
> > properly. Could someone please help me running this
> script successfully.
> >
> > =================================script
> begins============================
> > #! perl -w
> >
> > $path_and_filename="data.txt";
> 
> %Config=(); #global variable
> 
> >
> >
> > # Call the subroutine
> > &parse_config_file ($path_and_filename,
> \%Config);
> >
> > foreach $Config_key (keys %Config) {
> >
> >    print "$Config_key =
> $Config{$Config_key}\n";
> >
> > }
> > sub parse_config_file {
> >
> >    local ($config_line, $Name, $Value, $Config);
> >
> >    ($File, $Config) = @_;
> >
> >    if (!open (CONFIG, "$File")) {
> >        print "ERROR: Config file not found :
> $File";
> >        exit(0);
> >    }
> > #while () {
> 
> while ($config_line=<CONFIG>) {
> 
> >
> >       # $config_line=$_;
> >       chop ($config_line);          # Get rid of the
> trailling \n
> >        if  ($config_line !~ /^#/) {    # Ignore lines
> starting with # and
> > blank lines
> >            ($Name, $Value) = split (/=/,
> $config_line);          # Split
> > each line into name value pairs
> >            $$Config{$Name} = $Value;
> >
>                $Name=$Value=""; #reinitialize the
> variables
> 
> >                    # Create a hash of the name value
> pairs
> >        }
> >    }
> >
> 
> 
> >    close(CONFIG);
> >    }
> > =================================script
> ends==============================

Thanks it worked. Appreciate your help.


      

_______________________________________________
ilugd mailinglist -- ilugd@lists.linux-delhi.org
http://frodo.hserus.net/mailman/listinfo/ilugd
Archives at: http://news.gmane.org/gmane.user-groups.linux.delhi 
http://www.mail-archive.com/ilugd@lists.linux-delhi.org/

Reply via email to