Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re^4: File::Random module (Path::Iterator::Rule)

by gautamparimoo (Beadle)
on Apr 02, 2013 at 11:02 UTC ( #1026655=note: print w/ replies, xml ) Need Help??

in reply to Re^3: File::Random module (Path::Iterator::Rule)
in thread File::Random module

I understood the working of rand function. It calculate a random number which is checked against the if condition and if passed than the filename is given. But what if I want to specify to generate atleast 50 or 100 random files?

One machine can do the work of fifty ordinary men. No machine can do the work of one extraordinary man. -Elbert Hubbard

Comment on Re^4: File::Random module (Path::Iterator::Rule)
Replies are listed 'Best First'.
Re^5: File::Random module (Path::Iterator::Rule)
by xdg (Monsignor) on Apr 02, 2013 at 13:38 UTC

    Use the iterator with a while loop and just keep a count (or array) of the number of randomly selected files. Use last when you have enough. Or, if you run out of files, re-generate the iterator.

    For what it's worth, you can even put the randomness into the iterator:

    my $rule = Path::Iterator::Rule->new->file->and(sub { rand() < 0.1 });

    I just shipped PIR 1.005 to CPAN to fix broken tests on Windows.


    Code written by xdg and posted on PerlMonks is public domain. It is provided as is with no warranties, express or implied, of any kind. Posted code may not have been tested. Use of posted code is at your own risk.

      Thank you for the fast reply and fixing the bug (++).

      UPDATE: Installs without error now.


Re^5: File::Random module (Path::Iterator::Rule)
by Anonymous Monk on Apr 02, 2013 at 11:04 UTC

    But what if I want to specify to generate atleast 50 or 100 random files?

    Then, like, change the function somehow, do something inside it , to keep track of more than one random filename, like some kind of a variable that has more than one thing in it ... :P

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1026655]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (3)
As of 2015-11-28 06:36 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (739 votes), past polls