Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

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

by marto (Cardinal)
on Apr 02, 2013 at 10:46 UTC ( [id://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

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.

      -xdg

      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.

        McA

      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?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (5)
As of 2024-03-19 11:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found