Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

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

by marto (Bishop)
on Apr 02, 2013 at 10:46 UTC ( #1026652=note: print w/ replies, xml ) Need Help??

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

If you don't understand something read the documentaiton and make a short example to illustrate what it's doing in order to better understand what's going on.

my $i=0; my $x = rand $i++; print "$x\n";

Update: typo

Comment on Re^3: File::Random module (Path::Iterator::Rule)
Download Code
Replies are listed 'Best First'.
Re^4: File::Random module (Path::Iterator::Rule)
by gautamparimoo (Beadle) on Apr 02, 2013 at 11:02 UTC

    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

      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.


      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://1026652]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (8)
As of 2015-11-28 09:07 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 (740 votes), past polls