Gerando cadeias aleatórias
Publicado por Sandro Marcell 29/09/2008
[ Hits: 5.947 ]
Homepage: http://sanmarcell.wordpress.com
Simples script (em zsh) que gera cadeias utilizando letras, números, sinais, etc... de forma aleatória. Exemplos:
% ./script.sh 5
!sl[g
% ./script.sh 15
~^VnP_FVWeig51g
% ./script.sh 30
k8_aS@*R:EI2k2B_$g5ymMDSXaiQ*q
#!/bin/zsh -f # # Gerando cadeias aleatorias. # 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. # Carregando modulo de funcoes matematicas: zmodload -i zsh/mathfunc # Removendo caracteres invalidos: string="$argv" valor=$(print ${string//[^0-9]/}) # Caracteres utilizados para gerar a cadeia: cars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!?:^~@#$%&*_+=[]/" # Loop de controle: for ((i=0 ; i < ${valor:-13} ; i++)) do # Gerando cadeia: rand=$((1 + ((int(${(c)#cars} * rand48(seed))) / (RAND_MAX + 1 )))) print -n "$cars[$rand]" unset rand done print "" # Fim
Descompactar todos os arquivos RAR de um diretório
Banco de Dados Pessoais Interativo
Kernel ganha novos linters Rust e distros avançam com recursos de IA
Firewire resiste, Bcachefs sai: destaques Linux do dia
Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Como instalar Counter-Strike 1.6? (11)
intervenção politica pode interver no Fedora Linux [RESOLVIDO] (14)
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (0)