This is not how to get, in bash, the value of a variable whose name is in another variable:
$ A=1 $ B=A $ echo ${$B} bash: ${$B}: bad substitution
This is how:
$ echo ${!B} 1
It however only works in bash. For more portable scripts, eval is needed:
$ eval echo \$$B 1
Thanks to Martin Krafft and Cyril Brulebois.