Shuffle - Simples shell script que embaralha um array
Publicado por Roger (última atualização em 22/11/2010)
[ Hits: 6.097 ]
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[*]}
Reiniciar modem via Shell Script
Nenhum comentário foi encontrado.
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
[Resolvido] Algo deu errado ao abrir seu perfil
Usando o VNSTAT para medir o seu consumo de internet
Habilitando clipboard manager no ambiente COSMIC
Não estou conseguindo fazer funcionar meu Postfix na versão 2.4 no Deb... (1)
Quando vocês pararam de testar distros? (6)
A fórmula da coca-cola foi decompilada e agora é opensource! (4)









