http://qs321.pair.com?node_id=76971

azatoth has asked for the wisdom of the Perl Monks concerning the following question:

Hi Guys. Got a question for you.

I am tinkering around with Perl & Win32. I am using Activestate Perl 5.6 (Active build 630). And I am experiencing some strange behaviour. Please take a look at the code posted below :

#!perl -w use strict; print "Enter Directory Path : \n"; chomp(my $dirPath = <STDIN>); opendir (DIR, "$dirPath") || die "Fscked Filesystem: $!\n"; my @fileList = grep(!/^\.\.?$/, readdir (DIR)); closedir (DIR); foreach my $file (@fileList) { check_files($file,$dirPath); } ## SUBS ## sub check_files { my $file = shift; my $dirPath = shift; if (-A $file > 30) { print "$file has not been used for over 30 days. Delete? [y/n +]\n"; chomp(my $ans = <STDIN>); if ($ans =~ /^y/) { unlink ("$dirPath\\$file") || die "Could Not Remove $file +: $!\n"; print "Deleting $dirPath\\$file...\n"; } else { print "Skipping File...\n"; } } }
It is a little script that searches through a directory, checks the last modification of a file, and prompts the user for deletion if it meets certain criteria. As I said, I'm just tinkering. Now, the code at the moment checks for last usage of 30 days or under, here :

if  (-A $file < 30)

And this will work. But, I want to have this :

 if (-A $file > 30)

Where it will check for usage of 30 days or more. This is where Perl coughs and splutters and throws

Use of uninitialized value in numeric gt (>) at....

What's up with that?

Azatoth a.k.a Captain Whiplash

Make Your Die Messages Full of Wisdom!
Get YOUR PerlMonks Stagename here!
Want to speak like a Londoner?