Anzeige:
Ergebnis 1 bis 6 von 6

Thema: Variable in Variable?

  1. #1
    Registrierter Benutzer
    Registriert seit
    20.04.2001
    Beiträge
    79

    Variable in Variable?

    Hallo,
    ist es möglich in der Bash eine Variable in eine Variable zu speichern?
    Am besten gebe ich ein beispiel:
    Ich verwende drei Namen:
    Code:
    EMAIL_muenchen="muenchen@test.de"
    EMAIL_hamburg="hamburg@test.de"
    EMAIL_berlin="berlin@test.de"
    STANDORTE="Muenchen Hamburg Berlin"
    Nun arbeite ich in einer Schleife verschiedene Dinge ab. Es soll nun jeweils eine E-Mail an die Standorte geschrieben werden. Beispielsweise mache/versuchte ich es so:
    Code:
    echo -e $TEXT $READY_TEXT| mail -s "$BETREFF ${STANDORTE[$i]}" ${EMAIL_${STANDORTE[$i]}}
    Wie kann man das elegant lösen? Copy&Paste wäre auch eine Möglichkeit aber es muss doch schöner gehen?

    Bin für jeden Tipp /Hinweis dankbar

    Grüßle

    oafish

  2. #2
    Registrierter Benutzer
    Registriert seit
    30.06.2005
    Beiträge
    155
    Code:
    STANDORTE=("Muenchen" "Hamburg" "Berlin")
    EMAIL=("muenchen@test.de" "hamburg@test.de" "berlin@test.de")
    
    for ((i=0; i<${#STANDORTE[*]}; i++)); do
      echo -e $TEXT $READY_TEXT| mail -s "$BETREFF ${STANDORTE[$i]}" ${EMAIL[$i]}
    done
    religion is a virus from outer space

  3. #3
    Registrierter Benutzer
    Registriert seit
    20.04.2001
    Beiträge
    79
    Hi,
    so einfach ist es nicht. Ich kann die E-Mail Adressen nicht in einem Topf werfen. Diese müssen getrennt bleiben!

    Grüßle

    oafish

  4. #4
    Registrierter Benutzer
    Registriert seit
    30.06.2005
    Beiträge
    155
    keine ahnung was du meinst
    religion is a virus from outer space

  5. #5
    Registrierter Benutzer
    Registriert seit
    20.04.2001
    Beiträge
    79
    Hi,
    als wenn der Standort Berlin ist dann sollen auch die E-Mails aus EMAIL_berlin genommen werden. Da die Mail anzahl von Standort zu Standort verschieden ist kann ich diese auch nicht in einem Topf werfen.

    Ich möchte nun irgendwie aus EMAIL_${STANDORTE[$i]} die Werte in MAIL_berlin etc. auslesen. Doch wie macht man das?

    oafish

  6. #6
    Registrierter Benutzer
    Registriert seit
    30.06.2005
    Beiträge
    155
    so?
    Code:
    EMAIL_muenchen=("muenchen@test.de")
    EMAIL_hamburg=("hamburg1@test.de" "hamburg2@test.de" "hamburg3@test.de")
    EMAIL_berlin=("berlin1@test.de" "berlin2@test.de")
    STANDORTE=("muenchen" "hamburg" "berlin")
    
    for ((i=0; i<${#STANDORTE[*]}; i++)); do
      eval "mailnum=\${#EMAIL_${STANDORTE[$i]}[*]}"
      for ((j=0; j<$mailnum; j++)); do
        eval "echo \${EMAIL_${STANDORTE[$i]}[$j]}"
      done
    done
    religion is a virus from outer space

Lesezeichen

Berechtigungen

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