in reply to generate character string based on byte count !!

Are you looking for something like this?

#! perl -slw use strict; ## Adjust to suit your requirements my %types = ( lower => [ 'a'..'z' ], upper => [ 'A'..'Z' ], number=> [ '0'..'9' ], char => [ 'a'..'z', 'A'..'Z', '0'..'9' ], ); print join ' ', map{ my( $type, $n ) = $_ =~ m[(\w+) length = (\d+)]; join'', map{ $types{ $type }[ rand @{ $types{ $type } } ] } 1 .. $n; } @ARGV; __END__ P:\test>413131 "char length = 4" "number length = 3" "lower length = 6 +" tAwY 828 xkppno [12:35:08.56] P:\test>413131 "char length = 1" "number length = 10" "u +pper length = 2" j 3625181636 OB

Examine what is said, not who speaks.
"But you should never overestimate the ingenuity of the sceptics to come up with a counter-argument." -Myles Allen
"Think for yourself!" - Abigail        "Time is a poor substitute for thought"--theorbtwo         "Efficiency is intelligent laziness." -David Dunham
"Memory, processor, disk in that order on the hardware side. Algorithm, algorithm, algorithm on the code side." - tachyon