#!/usr/bin/perl #H# Generates a random password. # print out help info if requested #if ($ARGV[0] ne "") { # open (SELF, $0); # while () { # if ($_ =~ /^#H# /) { # $_ =~ s/^#H# //; # print $_; # } # } # exit; #} $LegalChars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#\$%^&*()-=_+,./?][}{|;:~\"\'\`\\"; $LegalChars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890@%^&*-=_+,./?][}{;:~\"\\"; $LegalChars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890@."; $LegalChars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890@%^=_+,./]}:~"; #$LegalChars="abcdef0123456789"; if ($ARGV[0] =~ /\d/) { $MinChars=$ARGV[0]; $NumOfChars=$ARGV[0]; } else { $MinChars="8"; $NumOfChars=17; } #$MaxExtraChars="01234"; srand; #$NumOfChars=substr($MaxExtraChars,int(rand(length($MaxExtraChars))),1); #$NumOfChars=$NumOfChars+$MinChars; $Loop=1; $Pass=""; while ($Loop <= $NumOfChars) { $Pass=$Pass . substr($LegalChars,int(rand(length($LegalChars))),1); $Loop=$Loop+1; } print "$Pass\n";