Here are two more solutions, both using different perl modules.
Observations: the shuffle would not return any duplicates, the Data/Random would not return duplicates until the result is quite long -- longer than the source strings (this is partly a guess and partly observation), the Data/Random/String can return duplicates as seen below.
My problem is as follow and i hope you can help:
I currently have this function:
stored_word()
{
number=$RANDOM
let "number %= 21"
case $number in
0 ) echo "energy" ;; 1 ) echo "touch" ;;
2 ) echo "climbing" ;; 3 ) echo "declare" ;;
4 ) echo "marry" ;; 5 ) echo "relax" ... (8 Replies)
I need to use the $RANDOM command to get a line from a list of lines in a file randomly.
file is
help
go
three
house
film
how do i randomly get one word without looking into the file? (6 Replies)
Hello everybody,
I am having problem in converting byte array variables to Hexa String variables for Linux. I have done, converting byte array variables to Hexa String variables for Windows but same function doesn't work for linux. Is there any difference in OS ? The code for Windows is given... (2 Replies)
Hi there folks,
for an exercise for my pupils (you know i am always thinking of them!) i need to randomly re-arrange the words (blank space separated) in a sentence (a line in a textfile). Any inspiration??
Txk so much. (9 Replies)
Hi
I am new to expect. Please if any one can help on my issue its really appreciable. here is my issue:
I want expect script for random passwords and random commands generation.
please can anyone help me?
Many Thanks in advance (0 Replies)
Need to use dd to generate a large file from a sample file of random data. This is because I don't have /dev/urandom.
I create a named pipe then:
dd if=mynamed.fifo do=myfile.fifo bs=1024 count=1024
but when I cat a file to the fifo that's 1024 random bytes:
cat randomfile.txt >... (7 Replies)
Hi All,
i have a requirement where i have to run a script with at least 25 arguements and position of arguements can also change. the unapropriate way is like below. can we achieve this in more good and precise way??
#!/bin/ksh
##script is sample.ksh
age=$1
gender=$2
class=$3
.
.
.... (3 Replies)
Sometimes it is handy to protect long scripts in C++.
The following syntax works fine for simple commands:
#define SHELLSCRIPT1 "\
#/bin/bash \n\
echo \"hello\" \n\
"
int main ()
{
cout <<system(SHELLSCRIPT1);
return 0;
}
Unfortunately for there are problems for:
1d arrays:... (10 Replies)
Below are three variables, which I want to pass into variable RESULT1
username1=userid
poihostname1=dellsys.com
port1=8080
How can I pass these variables into below code...
RESULT1=$((ssh -n username1@poihostname1 time /usr/sfw/bin/wget --user=sam --password=123 -O /dev/null -q... (4 Replies)
Discussion started by: manohar2013
4 Replies
LEARN ABOUT DEBIAN
string::random
String::Random(3pm) User Contributed Perl Documentation String::Random(3pm)NAME
String::Random - Perl module to generate random strings based on a pattern
SYNOPSIS
use String::Random;
$foo = new String::Random;
print $foo->randregex('ddd'); # Prints 3 random digits
print $foo->randpattern("..."); # Prints 3 random printable characters
or
use String::Random qw(random_regex random_string);
print random_regex('ddd'); # Also prints 3 random digits
print random_string("..."); # Also prints 3 random printable characters
DESCRIPTION
This module makes it trivial to generate random strings.
As an example, let's say you are writing a script that needs to generate a random password for a user. The relevant code might look
something like this:
use String::Random;
$pass = new String::Random;
print "Your password is ", $pass->randpattern("CCcc!ccn"), "
";
This would output something like this:
Your password is UDwp$tj5
If you are more comfortable dealing with regular expressions, the following code would have a similar result:
use String::Random;
$pass = new String::Random;
print "Your password is ",
$pass->randregex('[A-Z]{2}[a-z]{2}.[a-z]{2}d'), "
";
Patterns
The pre-defined patterns (for use with "randpattern()" and "random_pattern()") are as follows:
c Any lowercase character [a-z]
C Any uppercase character [A-Z]
n Any digit [0-9]
! A punctuation character [~`!@$%^&*()-_+={}[]|:;"'.<>?/#,]
. Any of the above
s A "salt" character [A-Za-z0-9./]
b Any binary data
These can be modified, but if you need a different pattern it is better to create another pattern, possibly using one of the pre-defined as
a base. For example, if you wanted a pattern "A" that contained all upper and lower case letters ("[A-Za-z]"), the following would work:
$foo = new String::Random;
$foo->{'A'} = [ 'A'..'Z', 'a'..'z' ];
or
$foo = new String::Random;
$foo->{'A'} = [ @{$foo->{'C'}}, @{$foo->{'c'}} ];
The random_string function, described below, has an alternative interface for adding patterns.
Methods
new
new max => number
Create a new String::Random object.
Optionally a parameter "max" can be included to specify the maximum number of characters to return for "*" and other regular
expression patters that don't return a fixed number of characters.
randpattern LIST
The randpattern method returns a random string based on the concatenation of all the pattern strings in the list.
It will return a list of random strings corresponding to the pattern strings when used in list context.
randregex LIST
The randregex method returns a random string that will match the regular expression passed in the list argument.
Please note that the arguments to randregex are not real regular expressions. Only a small subset of regular expression syntax is
actually supported. So far, the following regular expression elements are supported:
w Alphanumeric + "_".
d Digits.
W Printable characters other than those in w.
D Printable characters other than those in d.
. Printable characters.
[] Character classes.
{} Repetition.
* Same as {0,}.
? Same as {0,1}.
+ Same as {1,}.
Regular expression support is still somewhat incomplete. Currently special characters inside [] are not supported (with the
exception of "-" to denote ranges of characters). The parser doesn't care for spaces in the "regular expression" either.
Functions
random_string PATTERN,LIST
random_string PATTERN
When called with a single scalar argument, random_string returns a random string using that scalar as a pattern. Optionally,
references to lists containing other patterns can be passed to the function. Those lists will be used for 0 through 9 in the
pattern (meaning the maximum number of lists that can be passed is 10). For example, the following code:
print random_string("0101",
["a", "b", "c"],
["d", "e", "f"]), "
";
would print something like this:
cebd
BUGS
This is Bug Free(TM) code. (At least until somebody finds one...)
AUTHOR
Steven Pritchard <steve@silug.org>
SEE ALSO perl(1).
perl v5.10.0 2009-06-11 String::Random(3pm)