Powershell: bedingt Variablen laden (goto? function?

tomm1984

Lt. Junior Grade
Registriert
Juni 2016
Beiträge
332
Hallo geschätztes Forum.

In meinem Skript sollen unterschiedliche Variablen gepflegt werden bzw. vom einem config-file kommen. Abhängig davon, welche bedingung zutrifft (welcher tag ist), möge ein bestimmte werte für ein variablen-set gesetzt werden und danach "weiter im code" ... soweit ich gelesen habe, gibt es "goto" in Powershell nicht.

1694868275809.png


Code:
->goto zeile 17

# variablen-set 1
$varA = "11aa"
$varB = "bb"
->goto zeile 23

# variablen-set 2
$varA = "2aa"
$varB = "2bb"
->goto zeile 23

# variablen-set 3
$varA = "3aa"
$varB = "3bb"
->goto zeile 23

-> sinngemäß
wenn heute tag 1, dann lade variablen-set 1
wenn heute tag 2, dann lade variablen-set 2
wenn heute tag 3, dann lade variablen-set 3

...hier weiter


Wie könnte ich das umsetzen?
 
PowerShell:
$tagDerWoche = (Get-Date).DayOfWeek

switch ($tagDerWoche) {
    'Monday' {
        $variable = "Montags-Wert"
    }
    'Tuesday' {
        $variable = "Dienstags-Wert"
    }
    'Wednesday' {
        $variable = "Mittwochs-Wert"
    }
    'Thursday' {
        $variable = "Donnerstags-Wert"
    }
    'Friday' {
        $variable = "Freitags-Wert"
    }
    'Saturday' {
        $variable = "Samstags-Wert"
    }
    'Sunday' {
        $variable = "Sonntags-Wert"
    }
    default {
        $variable = "Ungültiger Tag"
    }
}

# Ausgabe des Wertes abhängig vom Tag der Woche
Write-Output "Heute ist $tagDerWoche. Variable ist $variable"
Den Beispiel Code habe ich mittels chatgpt erstellt.
 
ah, danke! ...das ist super; ist zwar nicht exakt wie von euch erahnt (Mo, Di, Mi ...), aber tatsächlich ähnlich (wirklich rollierend all drei, vier oder x tage ... die logik dafür habe ich schon) und sollte ich in den switch-vorschlag einbauen können. besten dank!
 
  • Gefällt mir
Reaktionen: sklaes

Ähnliche Themen

Zurück
Oben