#!/usr/bin/perl -w use strict; use IO::File; my @files = qw/file1 file2 file3/; my @fhs = map{IO::File->new($_)||die "$_: $!"} @files; print while $_ = join '', map{scalar <$_>||''} @fhs; __END__ #!/usr/bin/perl -w use strict; use IO::File; my $limit = 2000; my @files = qw/file1 file2 file3/; my @fhs = map{IO::File->new($_)||die "$_: $!"} @files; for(1 .. $limit) { $_ = join '', map{scalar <$_>||''} @fhs or last; print; } __END__