This question already has an answer here:
I have a code block with below condition, not sure what exactly it does.
$var = "${args}_Some_Text"
if [ "${!var}" == '' ];then
echo "$var is not defined !!!"
fi
This question already has an answer here:
I have a code block with below condition, not sure what exactly it does.
$var = "${args}_Some_Text"
if [ "${!var}" == '' ];then
echo "$var is not defined !!!"
fi
This is called variable indirect expansion.
As you see, it is a way to define "variable variables". That is, to use variables whose content is the name of another variable.
From Bash Reference Manual → 3.5.3 Shell Parameter Expansion: