Gerando "senhas" aleatórias

Publicado por Sandro Marcell 06/11/2008

[ Hits: 8.250 ]

Homepage: http://sanmarcell.wordpress.com

Download cadeia.csh




Simples script (em C shell) que gera cadeias aleatórias, conforme o valor especificado pelo usuário. Ex.:

$ ./script.sh 8
c3!z4REd

$ ./script.sh 20
+uo?Dlc8evs@8d!A20x#

$ ./script.sh 75
pNLgiEt4kZnCpTIh@xDh5ojiPik^7-AhQFKU#yRGjzOdLA@!@fsMpP2RZKL78aRGUYrq7aVsIN+

É isso aí, talvez seja útil a alguém! =D

  



Esconder código-fonte

#!/bin/csh -f
#
# Gerando cadeias aleatorias (Versao C Shell).
# Sandro Marcell (sandro_marcell@yahoo.com.br)
# 
# Uso: <script.sh> ou <script.sh [valor]>
#
# Onde:
# [valor] determinara a quantidade de caracteres que comporao a cadeia.
#
# Ex.:
# % ./script.sh 30
# xZ~c9r3VN@^c=ghWCm*NIt5t7AVsgO
#
# Obs.:
# - Somente numeros sao validos para a string [valor].
# - Caso [valor] nao seja especificado, o padrao assumido e 13.
# - Se [valor] possuir espacos ou quaisquer outros caracteres que nao
# sejam numeros, os mesmos serao removidos.
set path = ("/bin" "/usr/bin" "/usr/local/bin")

# Comando echo sem 'newline':
set echo_style = bsd

# Removendo caracteres invalidos:
set valor = `echo $argv | sed -u 's/[^0-9]//g'`

# Caso [valor] nao seja especificado, o padrao e assumido: 
if ! ($valor) set valor = 13

# Vetor com caracteres utilizados para gerar a cadeia:
set cars = ('a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'j' 'k' 'l' 'm' 'n' 'o' 'p' 'q' 'r' 's' 't' 'u' 'v' 'x' 'w' 'y' 'z' 'A' 'B' 'C' 'D' 'E' 'F' 'G' 'H' 'I' 'J' 'K' 'L' 'M' 'N' 'O' 'P' 'Q' 'R' 'S' 'T' 'U' 'V' 'X' 'W' 'Y' 'Z' 0 1 2 3 4 5 6 7 8 9 '!' '?' '^' '~' '@' '#' '$' '%' '&' '*' '-' '_' '+' '=')

# Loop de controle:
set ctd = 0
while ($ctd < $valor)
   # Gerando cadeia:
   @ rand = `head -c2 /dev/urandom | od -An -tu2` % $#cars + 1
   echo -n "$cars[$rand]"
   unset rand
   @ ctd++
end
echo ""
# Fim

Scripts recomendados

Programa de músicas

Monitoramento Servidor Linux

Script para Backup Banco Firebird

Altenartiva p/ montar/desmontar disquete em sistemas Debian

Rotina de Vacuum para banco de Dados Postgres


  

Comentários
[1] Comentário enviado por foguinho.peruca em 12/11/2008 - 00:38h

Olá!

Esse script vai me ajudar muito... estava procurando um pra usar mesmo....

vlw!!!
Jeff


Contribuir com comentário