Gerando senhas aleatórias
Publicado por Sandro Marcell 14/04/2008
[ Hits: 6.447 ]
Homepage: http://sanmarcell.wordpress.com
Simples Perl script que gera senhas aleatórias. Tá meio tosco, mas...
Ex.:
prompt: script.pl 30
prompt: Q-P6#z_Ipo?9+#l-Q4z!W=f6R9Nh+e
Outras versões:
Tcl:
http://www.slackbr.org/forum/viewtopic.php?f=46&t=16424
C shell:
http://www.slackbr.org/forum/viewtopic.php?f=45&t=16455
#!/usr/bin/perl
#
# Gerando senhas aleatorias.
# Sandro Marcell (sandro_marcell@yahoo.com.br)
#
# Uso: <script.pl> ou <script.pl [valor]>
#
# Onde:
# [valor] determinara a quantidade de caracteres que comporao a senha.
#
# Obs.:
# - Somente numeros sao validos para a string [valor].
# - Caso a string [valor] nao seja declarada, o padrao assumido e 10.
# - Se a string [valor] possuir espacos ou quaisquer caracteres que nao
# sejam numeros, os mesmos serao removidos.
# Inicializando variavel:
my $senha;
# Removendo caracteres invalidos:
my $valor = "@ARGV";
$valor =~ s/[^0-9]//g;
# Se [valor] nao for declarado, o padrao e assumido:
if (!length $valor) { $valor = 10; }
# Vetor com caracteres utilizandos para gerar a senha:
my @cars = ('a' .. 'z','A' .. 'Z',0 .. 9,qw(! ? ^ ~ @ # $ % & * - _ + = ));
# Loop de controle:
for (my $i = 0 ; $i < $valor ; $i++) {
# Gerando a senha:
reverse $senha .= @cars[int(rand(@cars))];
}
# Resultado:
print "$senha\n";
# Fim
Usando comandos shell com Perl
Assistente de instalação por apt!
Cálculo do MDC em Perl para quantidade ilimitada de parâmetros
Scalar - Alguns dos usos mais comuns deste tipo de variável do Perl
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Como cortar as partes de um vídeo com passagens de áudio em branco
Tiling automático no KDE Plasma
SNMP Scan no OCS Inventory só funciona com HTTPS corretamente configurado
Alguém tem que acabar com ANATEL!!! (1)
GOG confirma suporte oficial ao sistema Linux: "o trabalho começo... (4)









