[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Setando variáveis usando o valor de outra variável...
From: |
Jose Edson Moreno Jr |
Subject: |
Re: [shell-script] Setando variáveis usando o valor de outra variável... |
Date: |
Tue, 12 Apr 2011 09:27:19 -0300 |
Bom dia Felipe,
Use o comando eval para fazer isso assim :
eval P$i=$1
Um exemplo para você entender e visualizar:
> a=1
> b=3
> eval c$a=$b
> echo "a=$a b=$b c=$c c1=$c1"
a=1 b=3 c= c1=3
[]'s
Edson Moreno
Em 11 de abril de 2011 15:52, Felipe D. Martins
<address@hidden>escreveu:
>
>
> Boa tarde galera.
>
> Estava criando um script, pra uma atividade boba, até pra exercitar o pouco
> conhecimento que tenho de shell, e me deparei com o seguinte:
>
> Estou pegando a quantidade de parâmetros passados via linha de comando
> (QTD=$#) e fazendo um loop sobre esse valor para pegar cada parâmetro
> passado em uma variável diferente. A questão é que eu estava querendo gerar
> as variáveis de forma dinâmica, usando o próprio "$i" do for pra setar as
> variáveis, de acordo com a quantidade passada. Tipo:
> *
> *
> *QTD=$#
> for (( i = 1; i <= $QTD; i++ )); do
> set P$i=$1 #Aqui é que me lasco, queria gerar as variáveis tipo P1, P2,
> etc...
> shift
> done*
>
> Já me alertaram sobre o subshell gerado pelo for, o que me faz ter dois
> problemas, mas como eu faço pra "sair dessa"?
>
> Um abraço.
>
> Obs: É minha primeira mensagem ao grupo, não estranhem =]
>
> Felipe D. Martins
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
--
Jose Edson Moreno Jr.
[As partes desta mensagem que não continham texto foram removidas]