http://www.perlmonks.org?node_id=1052144


in reply to how to use perl variable in system command to run on unix

Fwiw

use Path::Class qw(dir file); use Time::localtime; my $dirpath = dir("/waslogs1/vfoneLog/cposapp"); my $outfile = file("/home/cpos/CRM_Reports/output/filelist.txt")->open +w; my @names = grep { my $st = $_->stat or die $!; localtime($st->mtime)->mon == 8 && # 8 means September localtime($st->mtime)->mday == 3 } $dirpath->children; $outfile->print($_->basename, "\n") for @names; $outfile->close or die $!;

Ok, it's a bit longer. However you don't suffer any problems like