Shuffle - Simples shell script que embaralha um array
Publicado por Roger (última atualização em 22/11/2010)
[ Hits: 6.020 ]
Simples shell script que embaralha um array.
Exemplo de utilização:
$> vec=( a b c d e f g h )
$> echo ${vec[*]}
a b c d e f g h
$> vec2=( $(shuffle ${vec[*]}) )
$> echo ${vec2[*]}
g b a c e f h d
Funcionou para sh, acredito que também funcione em outros shells. O tamanho do array não pode exceder 32767 pelo uso de $RANDOM.
#! /usr/bin/sh
array=( $@ )
length=$(echo ${array[*]} | wc -w)
i=0
while [[ $i -lt $length ]]
do
idx=$RANDOM%$length
aux=${array[$i]}
array[$i]=${array[$idx]}
array[$idx]=$aux
i=$((i+1))
done
echo ${array[*]}
Migrar de MySQL 3.x e 4.x para 5.0 no Debian
Automatizando a geração de relatórios do SARG
retira espaços em branco de arquivos
Backup para J-Pilot evitando arquivos problemáticos
Nenhum comentário foi encontrado.
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
Erro ao instalar programa, "você tem pacotes retidos quebrados&qu... (5)
VOL já não é mais como antes? (15)
Como personalizar o lxde? [RESOLVIDO] (5)
Flatpaks não funcionam após atualizar pelo Gerenciador de Atualizações... (3)









