#!/usr/bin/perl use warnings; use strict; my @values = 1 .. 70; my @boundaries = (1, 10, 20, 40, 60); my $OUT; my $index = 0; for my $value (@values) { if ($index <= $#boundaries && $value == $boundaries[$index]) { $index++; open $OUT, '>', "output.$index" or die $!; print {$OUT} "HEADER\n"; } print {$OUT} $value, "\n"; }