#!/usr/bin/perl use strict; use warnings; my $wantedLines = shift; # number of unique instances wanted my $numFiles = 0; my @files = (); while( my $file = shift) { open $files[$numFiles++], '<', $file or die "can't open $file, $!\n"; } my $totalLines = 0; my $ct = 0; my %unique = (); while($totalLines <= $wantedLines) { my $num = $ct++; $num = $num%$numFiles; print "$num\n"; my $this = <$files[$num]>; unless(exists $unique{$this}) { print $this; $totalLines++; } }