Renato,

Veja se isso ajuda:

#!/bin/bash
if [ $# -lt 2 ]
then 
    echo `basename $0` "a b " 1>&2
    exit 1
fi
a=$1
b=$2
c=1
while [ $b  -ge $c ]; do
   d=`echo $a |cut -c $c`
   valor[$b]=$d
   printf "%d"  ${valor[@]}
   c=$(($c +1))
done
echo
exit 0


julio menezes

--- Em seg, 16/1/12, Renato Rudnicki <[email protected]> escreveu:

De: Renato Rudnicki <[email protected]>
Assunto: [slack-users] ajuda com array em shell script
Para: [email protected]
Data: Segunda-feira, 16 de Janeiro de 2012, 15:50

Ola pessoal
Estou precisando de uma ajudinha com um array em shell script. O que eu preciso 
fazer, é que a cada valor que seja obtido dentro de um laço ( o valor do laço 
pode variar), seja exibido em um array. Eu estou tentando utilizar o seguinte 
script:

#!/bin/basha=110b=3c=1while [ $b  -ge $c ]; do   d=`echo $a |cut -c $c`   
valor[$b]=$d   echo ${valor[@]}   c=$(($c +1))
done

Existem 2 problemas que eu não consegui resolver:
1 - o script acima esta retornando os valores da seguinte forma:
1
10
111
112
113
etc...... porém, eu gostaria que ele retorna-se da seguinte forma:
110111 112113
2 - Outro problema, é que o valor da variável $a e da variável $b irão variar, 
e por isso, eu não estou conseguindo criar uma lógica para exibir o valor do 
array de acordo com o valor dinamico das variáveis $a e $b.

Até, não é obrigatório se utilizar um array, porém, foi a forma mais fácil que 
eu imaginei de conseguir o resultado que eu quero. Se eu não fui claro o 
suficiente, por favor, me avisem o que não entenderam que eu tento explicar 
novamente.




-- 

Abraços, 
Renato 






-- 

GUS-BR - Grupo de Usuários de Slackware Brasil

http://www.slackwarebrasil.org/

http://groups.google.com/group/slack-users-br

 

Antes de perguntar:

http://www.istf.com.br/perguntas/

 

Para sair da lista envie um e-mail para:

[email protected]

-- 
GUS-BR - Grupo de Usuários de Slackware Brasil
http://www.slackwarebrasil.org/
http://groups.google.com/group/slack-users-br

Antes de perguntar:
http://www.istf.com.br/perguntas/

Para sair da lista envie um e-mail para:
[email protected]

Responder a