Powershell If-Schleife funktioniert nicht

Mitglied: windelterrorist

windelterrorist (Level 1) - Jetzt verbinden

10.12.2015, aktualisiert 16:56 Uhr, 1446 Aufrufe, 5 Kommentare

Hallo Admins


Arbeite gerade an einem kleinen Script... funktioniert aber nicht so, wie ich mir das vorstelle...


Mein Code:

switch ($auswahl = Read-Host "Drücken Sie die Nummer (1-4), um den gewünschten Menüpunkt auszuwählen") {
"1" {Write-Host "Menü 1 wurde ausgewählt." -f yellow}
"2" {Write-Host "Menü 2 wurde ausgewählt." -f yellow}
"3" {Write-Host "Menü 3 wurde ausgewählt." -f yellow}
"4" {Write-Host "Das Programm wird beendet ..." -f Yellow}
}

$pfad = "E:\test"
$date = Get-Date -Format d.MMMM.yyyy

if ($auswahl = "1") {
$ordnername = md "$pfad\menu1_$date"
}

elseif ($auswahl = "2") {
$ordnername = md "$pfad\menu2_$date"
}

elseif ($auswahl = "3") {
$ordnername = md "$pfad\menu3_$date"
}

else {
exit
}


Egal welchen Menüpunkt ich auswähle, er nimmt immer nur die 1. if-schleife, respektive erstellt den Ordner menu1_$date... verstehe nicht woran es liegt...


Gruss
windelterrorist
Mitglied: 122990
122990 (Level 2)
LÖSUNG 10.12.2015, aktualisiert um 16:56 Uhr
Das Gleichheitszeichen ist kein Vergleichsoperator in Powershell sondern nur ein Zuweisungsoperator !!
Für Gleichheit benutzt man -eq
Lese bitte https://technet.microsoft.com/en-us/library/hh847732.aspx

Und wieso machst du IF-Abfragen obwohl du schon mit Switch unterscheidest was der User gewählt hat ??

Wohl noch Anfänger ?

So einen Kandidaten hatten wir hier schonmal
https://www.administrator.de/forum/verschachtelte-abfrage-powershell-289 ...
Bitte warten ..
Mitglied: ITvortex
LÖSUNG 10.12.2015, aktualisiert um 16:56 Uhr
Hallo,

als was speicherst du deine Auswahl?
Als String?

String auf Gleicheit überprüfen machst du mit -eq
https://www.windowspro.de/script/vergleichsoperatoren-powershell-eq-lt-g ...

Und bitte if-Abfrage und keine if-schleife!

Liebe Grüße
ITvortex
Bitte warten ..
Mitglied: windelterrorist
10.12.2015, aktualisiert um 16:57 Uhr
Hallo grexit

Ja, noch Anfänger :) face-smile


Ich habe das nicht 1:1 von meinem Script übernommen, habe nur ein Beispiel gemacht... in meinem Script können die If-Abfragen noch gar nicht mit Switch abgefragt werden, da sich verschiedene If-Schleifen auf die Switch-Auswahl beziehen.

Aber danke für deine Hilfe, habe den Wald vor lauter Bäumen nicht mehr gesehen ... in meinem script kam -eq zuvor schon ca. 5 mal vor ...


Gruss
windelterrorist
Bitte warten ..
Mitglied: 122990
122990 (Level 2)
10.12.2015, aktualisiert um 16:58 Uhr
Zitat von @windelterrorist:
Ich habe das nicht 1:1 mit meinem Script übernommen, habe nur ein Beispiel gemacht...
Ja ja, das sagen sie hinterher alle :-D face-big-smile

Schönen Feierabend wenns soweit ist.
Gruß grexit
Bitte warten ..
Mitglied: windelterrorist
10.12.2015 um 16:58 Uhr
Haha, wenn du meinst :D

Danke nochmal, schönen Abend
Bitte warten ..
Heiß diskutierte Inhalte
Off Topic
Realistische Gehaltsvorstellung für eine "IT-Allroundkraft"
gelöst JiggyLeeVor 1 TagFrageOff Topic19 Kommentare

Hallo an alle, ich hege momentan den Wunsch mich von der alten verstaubten Behörden Bürokratie und langweiliger Aufgaben los zu lösen und in einem ...

Windows 10
Windows 10 Geschwindigkeitprobleme trotz viel mehr Gb Ram
Matthes88Vor 1 TagFrageWindows 1045 Kommentare

Hallo ihr lieben aaaalso : Da mein neuer Arbeitsspeicher (32gb) von meiner alten Windows 7 version (max mit 8gb kompatibel) nicht angenommen wurde, habe ...

Humor (lol)
Tipp: Dinge, die man besser nicht klaut
altmetallerVor 1 TagTippHumor (lol)12 Kommentare

Hallo, so wurde meiner Hündin z.B. heute der (eingeschaltete) GPS-Tracker mit Mobilfunkanbindung quasi "direkt vom Halsband weggefunden". Akku hatte noch 60% :-P Und ich ...

Windows Server
GPU Passthrough HYPER-V 2019
bintesVor 1 TagFrageWindows Server8 Kommentare

Hallo, ich habe ein ein Problem mit der Bereitstellung einer Grafikkarte an eine virtuelle Maschine. Hardware: - HPE ProLiant DL380 Gen9 V4 Rack Server ...

Video & Streaming
Videoaufnahme funktioniert nur bis zum ersten Reboot (0x80040217)
IllusionFACTORYVor 1 TagFrageVideo & Streaming11 Kommentare

Ich nehme über eine Video-Software von einem USB-Hardware-Encoder Video auf. Das funktioniert exakt bis zum ersten Reboot - danach bekomme ich beim Starten der ...

Windows Server
Windows Admin Center DC
maximidVor 1 TagFrageWindows Server3 Kommentare

Hallo, ich hätte mal eine Frage zu Windows Admin Center und zwar schaue ich es mir aktuell etwas an da mir die zentrale Verwaltung ...

Grafikkarten & Monitore
Monitorhalterung mit 80cm Armlänge
ben1300Vor 23 StundenFrageGrafikkarten & Monitore7 Kommentare

Guten Abend ! ich bin auf der Suche nach einer Monitorhalterung, im besten Fall ohne Bohrung für einen 28" Monitor (Vesa Halterung). Nun kommt ...

SAN, NAS, DAS
Synology DS213j - Volume nach HDD Austausch vergrößern
gelöst JasperBeardleyVor 1 TagFrageSAN, NAS, DAS4 Kommentare

Moin, ich hab meinem NAS zwei neue 8TB spendiert, da die 3TB Platten jetzt 6 Jahre alt sind. Da die beiden Platten im JBOD ...