shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] ShellScript - Array


From: jimmy
Subject: Re: [shell-script] ShellScript - Array
Date: Mon, 18 Oct 2010 22:04:37 -0200
User-agent: Mutt/1.4.2.3i

Usando-se um shell com suporte  a vetores associativos também é possível
emular  um array  multidimensional realizando  concatenação de  strings,
mais ou menos como o awk faz:

declare -A array
for i in {1..9}; do
  for j in {1..9}; do
    (( array["$i:$j"] = $i + $j ))
  done
done

echo ${array[1:2]}

talvez usar o awk nesse caso seja mais adequado.


On Mon, Oct 18, 2010 at 04:29:46PM -0200, Julio C. Neves wrote:
> O bash aceita vetores com ?ndices inteiros e a partir da vers?o 4.0 aceita
> tb vetores associativos, isto ?, os que t?m ?ndice alfa. p. ex:
> 
> $ declare -A fruta
> $ fruta[laranja]=suco
> $ fruta[uva]=vinho
> $ fruta[cana]=cacha?a
> $ echo ${fruta[@]}
> cacha?a suco vinho
> $ echo ${!fruta[@]}
> cana laranja uva
> 
> No entanto em ambos os casos os vetores t?m somente uma dimens?o.
> 
> Qdo fiz um jogo da velha, emulei duas dimens?es criando ?ndices da seguinte
> forma:
> 
> Suponha que $Lin possua 3 e $Col possua 2. Assim para colocar um X na linha3
> coluna2 basta fazer:
> 
> tabuleiro[Lin*10+Col]=X
> 
> Para ler:
> 
> Linha = indice / 10
> Coluna= indice % 10
> 
> Espero que vc tenha entendido, se pretender usar esse macete, me avise em
> pvt, que te mando o jogo.
> 
> Abc,
> Julio
> 
> 
> 
> Em 18 de outubro de 2010 15:37, Leonardo D'Angelo Gon?alves <
> address@hidden> escreveu:
> 
> >
> >
> > Boa Tarde
> >
> > Gostaria de tirar uma duvida. O Bash ou qualquer outro shell possui suporte
> > a array de 2 dimensoes? e como seria sua implementa??o
> >
> > Exemplo:
> >
> > ARRAY[$i][$j]
> >
> > Obrigado

-- 
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------


reply via email to

[Prev in Thread] Current Thread [Next in Thread]