jonnyfolk has asked for the wisdom of the Perl Monks concerning the following question:

I am clearing out lines of data in a text file using a comparison between datestamps; Anything older than roughly 15 days gets deleted. Except that the line that is being deleted is not older than 15 days. Therefore I suspect that I am inadvertently deleting everything, but I know not why!!

open FH, '>', "$cuslist.tmp" or die "Can't open $cuslist.tmp: $!"; my @files; my $count; foreach my $line (@customerarray) { $count++; my ($memono, $cusref, $datestamp) = split '::', $line; if ( ($timestamp - $datestamp) > 1296000 ) { push (@files, $count); print FH "just pushed it!"; } } if (@files) { foreach my $item (@files) { $customerarray[$item - 1] = undef; } foreach my $item (@customerarray) { if ($item) { print FH "$item\n"; } } } close FH; #rename("$cuslist.tmp", "$cuslist") or die "can't rename $cuslist : $! +";