#!/usr/bin/perl -- use strict; use warnings; use POSIX(); use Path::Tiny qw/ path /; Main( @ARGV ); exit( 0 ); sub Main { my $date = POSIX::strftime('%Y-%m-%d', localtime); my $dirp = path( 'f:/lawprod/law/prd9/work/COMDATAFILE/IN/' ); my $diri = $dirp->iterator( { qw/ recurse 0 / }); while( my $file = $diri->() ){ if( $file =~ /^\Q$threenodes\E/ ){ FrobnicateInnoculate( $file->openrw_raw ); } } } sub FrobnicateInnoculate { my( $filehandle ) = @_; ... close $filehandle; }