Felix Geerinckx wrote:
> on Wed, 21 Aug 2002 11:33:06 GMT, [EMAIL PROTECTED] wrote:
>
>> 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.
>
>> open (FILE, ">>config.ini") || die "Can't open config.ini";
>>
>> while ($line = <FILE>) {
>
>
> You are trying to read from a file you opened for appending.
> Try this instead:
>
> #! perl -wi.bak
> use strict;
>
> my ($d, $m, $y) = (localtime())[3..5];
> my $date = sprintf("%4d%02d%02d", $y+1900, $m+1, $d);
> while (<>) {
> s/\d{8}/$date/g;
s/\d{8}/$date/go;
> print;
> }
>
> and run it as:
>
> $ tryme config.ini
>
> This will edit config.ini in-place (sort-of) and create a backup copy
> config.ini.bak before making the changes.
>
> (BTW, you *are* sure there are no other 8-digit numbers in you file,
> aren't you ;-)
>
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]