> -----Original Message----- > From: anu p [mailto:[EMAIL PROTECTED] > Sent: Friday, April 28, 2006 11:51 AM > To: beginners@perl.org > Subject: Modifiaction time of file > > Hi, > > I have a requirement where I need to look at the age > of file, if it's older than 2 days, I should remove > it. > I am trying to use the '-M ' filehandle in my script, > it does not work. > > I get the following error > Use of uninitialized value in numeric gt (>) at > ./temp_age.pl line 12. > > > #!/usr/bin/perl > > use strict; > use warnings; > > my $fail_dir = > "/home/anupamaperi/failed_tests/regress_26"; > my ($file, $age); > > opendir (DIR, $fail_dir) || die "cannot open, no > $fail_dir dir $!"; > while ($file = readdir (DIR)) { > if (-M $file > 2) { > print("$file\n"); > unlink($file); > } > }
readdir() returns directory entries in a list context if any entries exist and undef if there is nothing. You should read the entries in an array and iterate over that: my @files2check = readdir( DIR ); foreach my $file ( @files2check ) { if ( -M $file > 2 ) { ... } } ry > > Any ideas where am I going wrong? > > Thanks, > Anu. > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > > -- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > <http://learn.perl.org/> <http://learn.perl.org/first-response> > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>