Powershell If-Schleife funktioniert nicht
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
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
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 290601
Url: https://administrator.de/contentid/290601
Ausgedruckt am: 22.11.2024 um 16:11 Uhr
5 Kommentare
Neuester Kommentar
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
Verschachtelte IF Abfrage Powershell
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
Verschachtelte IF Abfrage Powershell
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
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
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 Ich habe das nicht 1:1 mit meinem Script übernommen, habe nur ein Beispiel gemacht...
Schönen Feierabend wenns soweit ist.
Gruß grexit