Gerando "senhas" aleatórias
Publicado por Sandro Marcell 06/11/2008
[ Hits: 8.176 ]
Homepage: http://sanmarcell.wordpress.com
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
#!/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
buscar textos que contenham várias strings
Inclusão e exclusão de usuários num PDC
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Eaí? Já programou no windows? (2)
Erro ao enviar arquivos para o Storage Synology NAS (0)
Instalar Dual Boot, Linux+Windows. (6)
Conky, alerta de temperatura alta (17)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









