De if/then-constructie is alledaags in PowerShell-code, maar wist je dat er nog een andere manier is, genaamd de ternaire operator, waarmee je je if/then-constructies veel beknopter kunt maken? Laten we leren hoe je een aangepaste PowerShell ternaire operator kunt maken.
Ten koste van leesbaarheid, zeggen sommigen, bouwt de ternaire operator conditionele logica die beknopter, eenvoudiger en met minder code is. Ze hebben gelijk, maar het is gewoon zo fijn om die ternaire-achtige gedrag in PowerShell te hebben!
Als je niet bekend bent met een ternaire operator, komt het er in feite op neer dat je een hashtable of een soortgelijke constructie gebruikt om een conditionele beslissing te nemen op basis van criteria.
If/Then in PowerShell
Om de Powershell ternaire operator uit te leggen, laten we eerst beginnen met een voorbeeld van een if/then-constructie.
Op het eerste gezicht denk je misschien dat er niets mis mee is. In feite is dat ook zo, maar deze voorwaarde kan net zo gemakkelijk worden getest met slechts één regel (onder mijn persoonlijke limiet van 115 tekens).
Bouw nu een PowerShell hashtable met twee sleutels; $true
en $false
. Maak vervolgens de waarden zoals je wilt dat ze worden weergegeven als een door jou gedefinieerde voorwaarde wordt voldaan.
Definieer vervolgens de voorwaarde ($CarColor is Blauw
) en controleer of deze voorwaarde wordt vervuld met $CarColor -eq 'Blauw'
.
Gebruik nu de voorwaarde ($CarColor -eq 'Blauw'
) als een sleutel in die hashtable. Hiermee wordt de controle uitgevoerd en wordt vervolgens het resultaat gebruikt om de sleutel in de hashtable op te zoeken.
Voltooi de PowerShell Ternary Operator

Eén regel! Is dat niet veel beknopter? In plaats van een if/then-verklaring te gebruiken, gebruik ik een hashtable en voer ik een opzoeking uit op basis van of $CarColor
gelijk is aan Blauw
of niet. De resulterende index wordt vervolgens naar de console uitvoerd. Als je deze methode wilt gebruiken, is het net zo eenvoudig als het invullen van deze blanco’s:
Je kunt ook meer toevoegen dan alleen $true
en $false
als je wilt. Je kunt elk aantal voorwaarden toevoegen in de hashtable en hierop controleren. Het is een eenvoudige manier om lange if/then-verklaringen of switch-verklaringen te vervangen.
Je hebt nu een aangepaste PowerShell-ternary-operator die je vandaag in je scripts kunt gaan gebruiken!