Ypsilon
01-09-2003, 12:08
Hi Leute,
ich kenne mich nur seehr wenig mit bash aus, und als ich gestern ein kleines Script schreiben wollte, bin ich auf folgendes Problem gestoßen:
Ich habe eine Variable $a und viele Variablen namens $x_1, $x_2, $x_3 etc.
$a enthält nun eine Zahl, die sich ändert, und abhängig von $a möchte ich den Inhalt von $x_1, $x_20 oder $x_5 usw. auslesen.
Eben den Inhalt der variablen x_$a.
Aber wie geht das?
Ich habe es mit so vielen unterschiedlichen Varianten probiert...
echo $x_$a führt schonmal zu einem falschen Ergebnis.
echo ${x_$a}, echo $("x_"$a) und all sowas auch.
Ich will eben nicht als Ergebnis von echo "x_10" oder so erhalten, sondern eben das, was in $x_10 steht!
Wie geht sowas, also wie kann ich den Inhalt von Variablen auslesen, deren Namen sich erst durch den Inhalt anderer Variablen zusammensetzt?
ich kenne mich nur seehr wenig mit bash aus, und als ich gestern ein kleines Script schreiben wollte, bin ich auf folgendes Problem gestoßen:
Ich habe eine Variable $a und viele Variablen namens $x_1, $x_2, $x_3 etc.
$a enthält nun eine Zahl, die sich ändert, und abhängig von $a möchte ich den Inhalt von $x_1, $x_20 oder $x_5 usw. auslesen.
Eben den Inhalt der variablen x_$a.
Aber wie geht das?
Ich habe es mit so vielen unterschiedlichen Varianten probiert...
echo $x_$a führt schonmal zu einem falschen Ergebnis.
echo ${x_$a}, echo $("x_"$a) und all sowas auch.
Ich will eben nicht als Ergebnis von echo "x_10" oder so erhalten, sondern eben das, was in $x_10 steht!
Wie geht sowas, also wie kann ich den Inhalt von Variablen auslesen, deren Namen sich erst durch den Inhalt anderer Variablen zusammensetzt?