Shuffle - Simples shell script que embaralha um array
Publicado por Roger (última atualização em 22/11/2010)
[ Hits: 5.819 ]
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[*]}
Fazendo backup de vários arquivos no LINUX
Instala o InterNet Explorer for Linux
Nenhum comentário foi encontrado.
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
Solução rápida para o problema do Network Manager conectar mas não navegar
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
Criar atalho para uma pasta na area de trabalho no Linux Mint? (0)
Montando e usando iso de um sistema dentro do outro (1)
Precisa de ajuda com monitoramento ou problemas com Zabbix? (0)