Ayuda Bash! Nombre de variable depende de otra variable!

Temas sobre programación ( php, c, sql, html, perl, python, ruby, java, bash, etc ) y recursos ( herramientas, frameworks, hosting, cms, etc )

Moderadores: akodo, maiku

Responder
meri_ye
Forista Nuevo
Forista Nuevo
Mensajes: 2
Registrado: Sab Jun 27, 2015 10:55 am

Ayuda Bash! Nombre de variable depende de otra variable!

Mensaje por meri_ye » Sab Jun 27, 2015 11:06 am

:o :o :o Hola buenas,

Tengo una variable que es la siguiente:

IP_R$X$y

La cual como veis depende de otras dos variables. Yo le asigano un comando que me devuleve una IP diferente cada vez que lo ejecuto.

IP_R$X$y=`comando`

Salida:

IP_R00=10.10.0.1
IP_R01=10.10.0.2
IP_R02=10.10.0.3
etc

Pero esa manera de expresarlo, me d error y no se quedan guardadas las variables en cada iteración de un bucle for que es donde está.

¿Podéis echarme una mano$?Quizás esto se haga de otra manera...pero no se me ocurre!!

Gracias!!!!!!!
Avatar de Usuario
neurus
Forista Legendario
Forista Legendario
Mensajes: 1802
Registrado: Dom Oct 10, 2004 7:00 am

Re: Ayuda Bash! Nombre de variable depende de otra variable!

Mensaje por neurus » Dom Jun 28, 2015 12:28 am

La explicación es muy, muy confusa.
Aclararía bastante las cosas que postearas el script, o que al menos te explicaras mejor.

En lo que se puede intuir -y hasta aventurar- de semejante no-explicación que has dado, puede que el problema se deba a que quieres que la salida sea literalmente "IP_R00=10.10.0.1", olvidando que el signo igual se usa para asignar valor a una variable y, si quieres representarlo gráficamente, debes anteponer el carácter de escape "\".

O puede ser cualquier otra cosa.
meri_ye
Forista Nuevo
Forista Nuevo
Mensajes: 2
Registrado: Sab Jun 27, 2015 10:55 am

Re: Ayuda Bash! Nombre de variable depende de otra variable!

Mensaje por meri_ye » Dom Jun 28, 2015 11:17 am

neurus escribió:La explicación es muy, muy confusa.
Aclararía bastante las cosas que postearas el script, o que al menos te explicaras mejor.

En lo que se puede intuir -y hasta aventurar- de semejante no-explicación que has dado, puede que el problema se deba a que quieres que la salida sea literalmente "IP_R00=10.10.0.1", olvidando que el signo igual se usa para asignar valor a una variable y, si quieres representarlo gráficamente, debes anteponer el carácter de escape "\".

O puede ser cualquier otra cosa.

Perdona, si que es verdad que no me expresé bien. Mi intención era guardar distintas IP en distintas variables, pero al final lo he ido guardado en un archivo temporal y lo he tratado a posteriori como un array.

Editado -- Dom Jun 28, 2015 11:17 am --

Al final decidí meter IP_R$X$y=$IP como texto en un archivo temporal >> /tmp/ips.tmp y luego tratarlo como un array.

ipArray=($(awk '{print $1}' $fileips))
puertoArray=($(awk '{print $2}' $fileips))
arraySize="${#ipArray[@]}"

for (( i=0; i<${arraySize}; i++ ));
do
ip_maquina=${ipArray[$i]};
puerto_maquina=${puertoArray[$i]}

done
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje