use warnings; use strict; open my $rndLines, '<', "rand_sorted.txt" or die "Can't open rand_sorted.txt: $!"; while (defined (my $nextLine = <$rndLines>)) { chomp $nextLine; next unless $nextLine =~ /^\d+/; my $line; while (defined ($line = <>)) { last if $. >= $nextLine; } print $line if defined $line; } close $rndLines;