Dynamically construct variables inside the script and fetch values from source parameters
By Jessica Wood •
I have a txt file extract.dat which is read inside my code using source.
$ cat extract.dat
ExchgRate_prop="EDB_NAME=share_exchange SRC_WDS=wds PN=ExchgRate"
Compliance_prop="EDB_NAME=share_compliance SRC_WDS=wca PN=com"
Unitcost_prop=="EDB_NAME=share_unitcost SRC_WDS=wda PN=unit"
source ./ extract.datnow I would have got all the varaibles inside my code. if my code takes an argument $PROJ with value as 'ExchgRate' , how can i concatenate "$PROJ""_prop" to create the variable ExchgRate_prop and then get value "EDB_NAME=share_exchange SRC_WDS=wds PN=ExchgRate"
1 Answer
You can use bash variable indirection. Ex. given
$ echo "$ExchgRate_prop"
EDB_NAME=share_exchange SRC_WDS=wds PN=ExchgRateand
$ PROJ=ExchgRatethen
$ var=${PROJ}_prop
$ echo "${!var}"
EDB_NAME=share_exchange SRC_WDS=wds PN=ExchgRate 1 More in general
"Zoraya ter Beek, age 29, just died by assisted suicide in the Netherlands. She was physically healthy, but psychologically depressed. It's an abomination that an entire society would actively facilitate, even encourage, someone ending their own life because they had no hope. Th…"