#!/usr/bin/perl use strict; use warnings; use Date::Simple 'ymd'; for (my $date=ymd(2008,8,1), my $end=ymd(2008,9,30);$date <= $end; $date++) { my $file = $date->format("%y%m%d_name"); warn("$file: no such file\n"), next unless -e $file; open IN, "<", $file or die "Unable to open $file"; while () { # ... process } close IN or die "Unable to close $file"; }