#! perl -slw use strict; use constant NFILES => 10; my @fhs; open $fhs[ $_ ], '>', 'output.' . $_ or die $! for 0 .. NFILES - 1; my $iFhs = 0; while( <> ) { for my $word ( split '\W+' ) { print { $fhs[ $iFhs ] } $word; ++$iFhs; $iFhs %= NFILES ; } } close $_ for @fhs;