Shuffle - Simples shell script que embaralha um array
Publicado por Roger (última atualização em 22/11/2010)
[ Hits: 6.203 ]
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[*]}
Automatizando o serviço do Redmine via webrick
Nenhum comentário foi encontrado.
File Browser: Crie sua Nuvem Pessoal Privada
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
Acelerando a compilação de pacotes no Arch Linux (AUR) usando todos os núcleos do processador
Ocultando asteriscos ao digitar senha no Ubuntu
Continuando meus tópicos anteriores (13)
As Assinaturas Perderam o Negrito e o Itálico? [RESOLVIDO] (1)









