How do I reference the value of a constructed environment variable in a loop?

Posted by Rob Spieldenner on Server Fault See other posts from Server Fault or by Rob Spieldenner
Published on 2010-04-19T16:49:14Z Indexed on 2010/04/19 16:53 UTC
Read the original article Hit count: 306

Filed under:
|

What I'm trying to do is loop over environment variables. I have a number of installs that change and each install has 3 IPs to push files to and run scripts on, and I want to automate this as much as possible (so that I only have to modify a file that I'll source with the environment variables). The following is a simplified version that once I figure out I can solve my problem.

So given in my.props:

COUNT=2
A_0=foo
B_0=bar
A_1=fizz
B_1=buzz

I want to fill in the for loop in the following script

#!/bin/bash
. <path>/my.props

for ((i=0; i < COUNT; i++))
do
  <script here>
done

So that I can get the values from the environment variables. Like the following(but that actually work):

echo $A_$i $B_$i

or

A=A_$i
B=B_$i
echo $A $B

returns foo bar then fizz buzz

© Server Fault or respective owner

Related posts about linux

Related posts about bash