[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] Passando valores de arquivo de parametro paraoshell
From: |
Rodrigo Santos Vieira |
Subject: |
RES: [shell-script] Passando valores de arquivo de parametro paraoshell |
Date: |
Wed, 4 Apr 2007 06:49:06 -0300 |
Valeu Tiago, funcionou.
Att.
Rodrigo Santos Vieira <address@hidden>
Operador de CPD.
Tel.: 47 4009-8450 Fax: 47 4009-8321.
Cel: 47 9988-4515.
Tupy Fundições Ltda.
Rua Albano Schmidt, 3400.
89227-901 - Joinville - SC.
www.tupy.com.br
-----Mensagem original-----
De: address@hidden [mailto:address@hidden]Em nome de Tiago Barcellos Peczenyj
Enviada em: terça-feira, 3 de abril de 2007 07:20
Para: address@hidden
Assunto: Re: [shell-script] Passando valores de arquivo de parametro
paraoshell
A solução rapida para o seu problema é usar o eval
var1=10
var2=11
var3=12
$ for n in 1 2 3 ; do eval echo \$var$n ; done
10
11
12
uma outra forma seria produzir um vetor com cada elemento
$ var=(10 11 12 13 14 15)
$ for n in ${var[@]} ; do echo $n ; done
10
11
12
13
14
15
depois é so ir adicionando
$ var[6]=19
$ for n in ${var[@]} ; do echo $n ; done
10
...
19
[]´s Tiago
On 4/3/07, Rodrigo Santos Vieira <address@hidden> wrote:
>
> Bom dia Galera.
>
> Não me fiz entender na primeira explicação do meu problema, vou tentar
> novamente:
>
> Tenho um arquivo de parametros com valores de variáveis, vamos supor que
> este arquivo se chame par.sh
> Dentro deste arquivo esta as variáveis estão armazenando valores, por
> exemplo
>
> var1=10
> var2=11
> var3=12
> var4=13
> ...
> var300=0
>
> Estou tentando fazer com que um outro shell encontre os valores dessas
> variáveis, que vamos chamar de dados.sh.
> Para que eu não precise ter que digitar cada variável no shell
dados.shestou procurando achar uma forma de fazer com que a variável $var
adicione a
> si o um valor numérico e se transforme em $var1 e vá incrementando esse
> valor numérico a cada volta, ficando $var2, $var3... e assim po diante.
> Ex:
>
> n=1;
> while [ $para -ne 0 ]
> do
> . par.sh
> para='$var'$n; # Aqui é onde estava tentando fazer com que o variável $var
> se transformasse
> # em $var1, depois do loop, $var2 ... e assim vai até encontrar o ultimo
> valor das variáveis
> # que é ZERO, que estão no arquivo par.sh
>
> n=`expr $n + 1`;
> done
>
> Dei uma olhada vários materiais sobre vetores e arrays, mas não consegui
> identificar nada para resolver esse problema.
> Se alguem puder me ajudar a resolver este problema ou indicar um caminho
> ficaria muito grato.
>
> Att.
> Rodrigo
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
--
Tiago B Peczenyj
Linux User #405772
# cd /pub
# more beer
[As partes desta mensagem que não continham texto foram removidas]
[As partes desta mensagem que não continham texto foram removidas]