my $found=undef; while (){ if ($found eq $number and /^-/) { print COPYFILE "$_\n"; } elsif (/^($name)/o) { $found = $1; } } close (COPYFILE); close (FILE);