PowerShell 7.0’da Microsoft ayrıca üçlü operatöre sahiptir ? : alternatif olarak if … else tanıtıldı.
Windows PowerShell 1.0’dan beri şunları yapabilirsiniz: if…else sadece komut blokları için değil, aynı zamanda sözde “üçlü operatör” gibi ifadeler için de. PowerShell 7.0’da Microsoft ayrıca daha özlü bir üçlü operatöre sahiptir ? : alternatif olarak if … else tanıtıldı.
Aşağıdaki örnekte alır $Anzeige duruma bağlı olarak farklı bir değer:
[DateTime]::Now.Second
$Bedingung = [DateTime]::Now.Second % 2 -eq 0
$Bedingung
$Anzeige = if ($Bedingung) { "gerade" } else { "ungerade" }
$Anzeige
PowerShell 7.0’dan başlayarak, örneğin üçlü işleç için C++, C# ve Java’da ortak olan özlü gösterimi de kullanabilirsiniz. ? True-Fall : False-Fall kullanım:
[DateTime]::Now.Second
$Bedingung = [DateTime]::Now.Second % 2 -eq 0
$Bedingung
$Anzeige = ? ($Bedingung) { "gerade" } : { "ungerade" }
$Anzeige
Başka bir örnek:
eskimiş:
$ausgabe = (Test-Path c:temp) ? "Temp-Verzeichnis vorhanden" : "Temp-Verzeichnis nicht vorhanden"
yeni:
$ausgabe = (Test-NetConnection MeinServer123).PingSucceeded ? "Server erreichbar" : "Server nicht erreichbar!"
Başka bir örnekte im else– case yalnızca boş bir dize döndürür. Burada yapabilirsin if ONLAR else– Vakayı atla. Yeni operatör ile ? : Mümkün değil. PowerShell, “Üçlü ifadede ‘:’ eksik” ile şikayet ederdi.
eskimiş:
Write-host "$c ist$(if (-not $istOnline) { " NICHT" }) erreichbar" -ForegroundColor "$(if ($istOnline) { "Green" } else { "Red" })"
yeni:
Write-host "$c ist$(-not $istOnline ? ' NICHT' : '') erreichbar" -ForegroundColor "$($istOnline ? "Green" : "Red")"
()
Haberin Sonu
Windows PowerShell 1.0’dan beri şunları yapabilirsiniz: if…else sadece komut blokları için değil, aynı zamanda sözde “üçlü operatör” gibi ifadeler için de. PowerShell 7.0’da Microsoft ayrıca daha özlü bir üçlü operatöre sahiptir ? : alternatif olarak if … else tanıtıldı.
Aşağıdaki örnekte alır $Anzeige duruma bağlı olarak farklı bir değer:
[DateTime]::Now.Second
$Bedingung = [DateTime]::Now.Second % 2 -eq 0
$Bedingung
$Anzeige = if ($Bedingung) { "gerade" } else { "ungerade" }
$Anzeige
PowerShell 7.0’dan başlayarak, örneğin üçlü işleç için C++, C# ve Java’da ortak olan özlü gösterimi de kullanabilirsiniz. ? True-Fall : False-Fall kullanım:
[DateTime]::Now.Second
$Bedingung = [DateTime]::Now.Second % 2 -eq 0
$Bedingung
$Anzeige = ? ($Bedingung) { "gerade" } : { "ungerade" }
$Anzeige
Başka bir örnek:
eskimiş:
$ausgabe = (Test-Path c:temp) ? "Temp-Verzeichnis vorhanden" : "Temp-Verzeichnis nicht vorhanden"
yeni:
$ausgabe = (Test-NetConnection MeinServer123).PingSucceeded ? "Server erreichbar" : "Server nicht erreichbar!"
Başka bir örnekte im else– case yalnızca boş bir dize döndürür. Burada yapabilirsin if ONLAR else– Vakayı atla. Yeni operatör ile ? : Mümkün değil. PowerShell, “Üçlü ifadede ‘:’ eksik” ile şikayet ederdi.
eskimiş:
Write-host "$c ist$(if (-not $istOnline) { " NICHT" }) erreichbar" -ForegroundColor "$(if ($istOnline) { "Green" } else { "Red" })"
yeni:
Write-host "$c ist$(-not $istOnline ? ' NICHT' : '') erreichbar" -ForegroundColor "$($istOnline ? "Green" : "Red")"
()
Haberin Sonu