Na dann war der eine, der bash nicht ganz verstanden hat, offenbar ich. "echo $n is $var" ist nicht geeignet, das Ergebnis der eval-Operation zu überprüfen, es sollte dann doch schon "echo $n is ${!n}" sein. Dann passt's auch mit Deiner Variante, wobei bash auch mit der sparsamer escape-ten...