in reply to Re: Re: Simple Log Rotate Problem
in thread Simple Log Rotate Problem

Try this:
my $dir = "H:/vpn/"; my $out = "H:/vpn/vpnwarn.out"; my $old = "H:/vpn/vpnwarn.old"; if (-e $old) { unlink($old) || die ("Could not unlink: $!"); } if (-e $out) { mv ($out, $old) || die ("Could not mv: $!"); } # create and write new $out here

Replies are listed 'Best First'.
Re: Re: Re: Re: Simple Log Rotate Problem
by monger (Friar) on Nov 14, 2003 at 14:14 UTC
    Try this:
    my $dir = "H:/vpn/"; my $out = "H:/vpn/vpnwarn.out"; my $old = "H:/vpn/vpnwarn.old"; if (-e $old) { unlink($old) || die ("Could not unlink: $!"); } if (-e $out) { mv ($out, $old) || die ("Could not mv: $!"); } # create and write new $out here
    mmetraz, Thanks for the suggestion. I looked at it, tried it, and found my error. I was writing the .out and .old files to the same directory to which I was writing. So, each pass through the directory yielded a doubling of the size of the .out, and a corresponding increase in the .old. I did the quickest thing I could now: dropped the .out and .old to a different directory. However, I'll try to look at filtering my directory read better later.

    Thanks to all the monks who offered helped! I've looked at all your suggestions, and learned from each!

    monger