Anzeige:
Ergebnis 1 bis 5 von 5

Thema: [bash] variablennamen substituieren

  1. #1
    Registrierter Benutzer
    Registriert seit
    16.09.2002
    Beiträge
    73

    [bash] variablennamen substituieren

    Hi Leutz,

    ich müsste in einem kleinen Bashscript Variablennamen substituieren können. Geht das überhaupt?
    Ich meine sowas in der Art:
    Code:
    VARS="var1 var2"
    VARS_var1="yes"
    VARS_var2="no"
    
    for i in "$VARS" ; do
    	echo "VARS_$i ist gesetzt auf ${VARS_$i}"
    done

  2. #2
    Registrierter Benutzer Avatar von Hans-Georg Normann
    Registriert seit
    04.03.2000
    Ort
    Uetersen
    Beiträge
    571
    Probier das einmal:
    Code:
    VARS="var1 var2"
    VARS_var1="yes"
    VARS_var2="no"
    
    for i in $VARS ; do
    	echo "VARS_$i ist gesetzt auf VARS_$i"
    done
    Hans
    333 Mhz, 466 MHz, neee, ich hab was neues zuhause.....

  3. #3
    Registrierter Benutzer
    Registriert seit
    11.06.2004
    Ort
    Berlin
    Beiträge
    55
    Ich kann dir da jetzt auch nicht helfen. Hab aber zwei sehr gute Links über Bash bzw Shellprogrammierung:

    http://www.odise.de/projekte/eskeidbl/html/node1.html
    http://www.uni-giessen.de/hrz/htmldo...shref_toc.html

  4. #4
    Registrierter Benutzer
    Registriert seit
    16.09.2002
    Beiträge
    73
    Schade, scheint wohl tatsächlich nicht zu gehen.
    Trotzdem Danke euch beiden - Die Links sind echt Klasse.
    @Hans:
    Schon klar daß das geht. Ist nur leider nicht das was ich wollte.

  5. #5
    Registrierter Benutzer
    Registriert seit
    16.09.2002
    Beiträge
    73
    Habs jetzt doch mit Trick 17 geschafft:

    Code:
    VARS="var1 var2 var3"
    VARS_VALUES="VARS_var1=\"yes\" VARS_var2=\"no\""
    
    BASHPROG="$VARS_VALUES;"
    for i in $VARS ; do
            BASHPROG="$BASHPROG echo \"VARS_$i = \${VARS_$i}\";"
    done
    
    echo "$BASHPROG" | /bin/bash
    Liefert als Ausgabe:
    VARS_var1 = yes
    VARS_var2 = no
    VARS_var3 =

    Einzig die Geschichte mit den VARS_VALUES gefällt mir irgendwie nicht. - Mal schaun.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •