Se o nome da variável não for uma string estática (ou melhor: se a parte antes do =
contiver qualquer coisa não permitida em um nome de variável), a designação não será reconhecida como tal.
Você precisa de eval
:
tmp_var="$(my_def_get_hddstaus "$hdd")"
eval status_$hdd=\""$tmp_var"\"
editar
Você pode echo
o valor usando eval
novamente ou indiretamente:
eval echo \"\$status_$hdd\"
ou
var_name="status_$hdd"
echo "${!var_name}"