On Wed, 21 Aug 2002 [EMAIL PROTECTED] wrote:

> Hi,
> 
> I'm trying to substitute  all references  to a date (of the format
> YYYYMMDD) in a file to the current date. I'm obviously doing something
> wrong here ('cause it doesn't work!:}), as no change is made to the
> config.ini file.
> the $date variable is derived form another part of my script.
> 
> thanks,
> Adrian
> 
> open (FILE, ">>config.ini") || die "Can't open config.ini";

As has already been pointed out you are opening the file in append mode 
and trying to read from it.

If you want to modify this file you will have to create a temp file, write 
into it and copy it back. If your @ARGV contains nothing you can do this

$^I = '~' # perldoc perlvar
push (@ARGV, 'config.ini');
while (<>) {
  s/\d{8}/$date/g;
  print;
}

> 
> while ($line = <FILE>) {

When FILE is opened in write mode '>' (with warnings turned on) this gives 
this message 'Filehandle TEST opened only for output at...'. The same 
message does not appear when it is opened in append mode '>>'. Any 
particular reason for this 
perl versions - 5.8.0 and 5.6.1
OS : RH linux 7.3
 
>         chomp($line);
>        $line=~s/\d{8}/$date/g;
> }




-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to