Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Is there a better way.

by tokpela (Chaplain)
on Feb 24, 2009 at 09:41 UTC ( #745949=note: print w/replies, xml ) Need Help??


in reply to Is there a better way.

I don't see the solution of pulling into an initial @files array scalable.

I would iterate over the directory handle - what if you want to search a directory that has thousands of files (ie lots of memory)?

my $caseNumber = $ARGV[0]; my $pattern = "(.*?)$caseNumber(.*?)"; my $count = 0; my @uploads; ##Open logfiles directory opendir DIR, "Directory" or die "Unable to open Directory, please try +again"; while (my $filename = readdir(DIR)) { if ($filename =~ /$pattern/) { my $filepath = "$directory/$filename"; # make full filepath push(@uploads, $filepath); } } closedir DIR; $count = scalar(@uploads);

Also, I added the directory to the filename since I imagine that you will probably want to access the files at some point from the array.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://745949]
help
Chatterbox?
and nobody stirs...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (None)
    As of 2017-04-28 05:00 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?
      I'm a fool:











      Results (517 votes). Check out past polls.