#!/usr/bin/env perl -l use strict; use warnings; my $base_dir = './pm_proc_dir_dates_rev_dir'; my $start_date = '20110228'; my $end_date = '20110302'; opendir my $dh, $base_dir or die "Can't open '$base_dir': $!"; for (reverse grep { /^[^.]/ } readdir $dh) { if (/$end_date$/ .. /$start_date$/) { print "+ Processing: $base_dir/$_"; } else { print "- Skipping: $base_dir/$_"; } } closedir $dh;