Shell Script Problem (Variablenauflösung)

W@sserleiche

Enthusiast
Thread Starter
Mitglied seit
29.06.2003
Beiträge
185
Ort
Nürnberg
Hi Leute,

ich hab da ein kleines Problemchen, und zwar gehts um ein ShellScript und dessen Variablenauflösung.
Ich sollte dazu sagen, dass ich nur selten ShellScripts einsetze und deswegen die genauen Unterschiede zwischen den vielen Anführungszeichen und deren Kombinationen nicht genau kenne.

Folgendes Problem:

Code:
MY_VAR="129 130 131 132 133 134"
for TMP_VAR in $MY_VAR
do
   echo $TMP_VAR
done

Erwünschtes Verhalten: $MY_VAR wird aufgelöst und die Zahlen einzeln an $TMP_VAR übergeben. Doch irgendwie klappt das nicht.
Habs auch schon mit "$MY_VAR" probiert, geht aber auch nicht.

Also, hat jemand ne Idee wie ich die Bash dazu bringe die Variable aufzulösen?

Schonmal vielen Dank im voraus!
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Hi,

das sieht für mich doch ein wenig wuselig aus. Variablen werden mit "set var" deklariert.

Hier unter "FOR (Schleifen)" findest du ein paar Infos, oder soll es keine Batch werden :hmm:

Gruss QGel
 
This should work:

Code:
#!/bin/bash

ARRAY='1 2 3 4 5'

for i in $ARRAY
do 
        echo $i
done
 
@QGel:
Nein, hier handelt es sich nicht um eine Batch file, sondern um ein Linux ShellScript (Bash).

@gnex:
Vielen Dank für den Tipp, nur leider musste ich das Script ein bisschen umschreiben. So sieht es jetzt aus:

Code:
echo "Data (seperated by space):"
read ARRAY

for I in $ARRAY
do
   echo $I
done

Funktioniert leider nicht. Gibt es einen anderen Weg der sinnvoller wäre?

Schonmal danke für weitere Antworten...
 
@QGel:
Nein, hier handelt es sich nicht um eine Batch file, sondern um ein Linux ShellScript (Bash).

@gnex:
Vielen Dank für den Tipp, nur leider musste ich das Script ein bisschen umschreiben. So sieht es jetzt aus:

Code:
echo "Data (seperated by space):"
read ARRAY

for I in $ARRAY
do
   echo $I
done

Funktioniert leider nicht. Gibt es einen anderen Weg der sinnvoller wäre?

Schonmal danke für weitere Antworten...

das script funktioniert bei mir einwandfrei
 
Oh man, ich weiß nicht was ich gemacht hab, aber als ich es gerade eben hier aus dem Forum kopiert hab, hats auch wunderbar geklappt.
Sorry, keine Ahnung was ich da grad für ein Mist zusammengeschrieben habe.

Trotzdem nochmal danke für die Hilfe :-)
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh