Das hier brachte mich weiter: http://www.linuxquestions.org/questions/programming-9/bash-copy-array-using-...
#!/bin/bash
variablen=("var1" "var2")
var1=("hu" "ho")
var2=("hi" "ha")
m="${variablen[1]}"
echo $m # ouput : var2
n="${m}[@]";
echo ${!n} # output : hi ha
declare -a o=("${!n}");
echo ${o[@]} # output : hi ha
echo ${o[0]} # output : hi
echo ${o[1]} # output : ha
Mit freundlichen Grüßen / Kind regards
Ronny Seffner
--
Ronny Seffner | Alter Viehweg 1 | 01665 Klipphausen
www.seffner.de | ronny@seffner.de | +49 35245 72950
> -----Ursprüngliche Nachricht-----
> Von: lug-dd-bounces@mailman.schlittermann.de [mailto:lug-dd-
> bounces@mailman.schlittermann.de] Im Auftrag von Heiko Schlittermann
> Gesendet: Donnerstag, 25. Oktober 2012 14:27
> An: lug-dd@mailman.schlittermann.de
> Betreff: Re: bash und variablenamen aus array lesen
>
> Ronny Seffner
ronny@seffner.de (Do 25 Okt 2012 13:50:27 CEST):
> > Hallo Gruppe,
> >
> > ich habe in einer Datei z.b. Folgendes:
> >
> > klasse=("eins" "zwei")
> > eins=("klaus" "gerd")
> > zwei=("emil" "inge")
> >
> > Diese Datei binden ich mittels source in ein bas-Skript ein und möchte
> gern
> > den zweiten Schüler der ersten Klasse wissen:
> >
> > ${${!${klasse[0]}}[1]} geht nicht aber:
>
> Bin mir nicht sicher, ob das was wird, die Bash ist mit Substitutionen
> in Substitutionen nicht ganz so gut. Und übersichtlich ist es dann auch
> nicht.
>
> Ich würde da eine andere Scriptsprache nehmen.
>
> > ${klasse[0]} liefert doch "eins"
> >
> > ${!text} referenziert auf eine Variable "text"
>
> Nein, auf eine Variable, deren Name in der Variablen "text" steht.
>
>
> --
> Heiko