Úvod
kolikrát jste pomocí if-ELSE prohlášení, s více než 4 ELSEIF podmínky? Chci vám ukázat srovnání SWITCH vs IF příkazy v Powershell. Proč byste měli zvážit použití příkazu SWITCH? Koukni na tohle.
nejprve se podívejme, co je příkaz Powershell SWITCH.
Co je Powershell příkazy Switch
Někdy budete muset zpracovat mnoho jednotné podmínky. Jsem si jistý, že většina uživatelů Powershell začátečníků si vybere příkazy IF-ELSEIF-ELSE. Zde je alternativní způsob, jak to provést pomocí příkazů SWITCH. Podívejme se na příklad-určení vozidla podle počtu kol.
$WheelsCount = 4if ($WheelsCount -eq 4) {Write-Host "it's a car"}`elseif ($WheelsCount -eq 2) {Write-Host "it's a bike"}`elseif ($WheelsCount -eq 0) {Write-Host "it's a boat"}`else {Write-Host "Unknow"}
$WheelsCount = 4switch ($WheelsCount) { 4 {Write-Host "it's a car"}` 2 {Write-Host "it's a bike"}` 0 {Write-Host "it's a boat"}` default {Write-Host "Unknow"}}
Powershell SPÍNAČ vs, POKUD
Možná vás zajímá, proč byste měli používat příkazy SWITCH. Jaký je rozdíl mezi příkazy Powershell SWITCH vs IF. Vždy můžete použít podmínky IF-ELSE. Doporučuji však použít příkazy SWITCH z několika důvodů.
nejprve byste se měli rozhodnout použít příkazy SWITCH, protože v některých scénářích je to rychlejší.
použiji stejný příklad, jaký jsem použil dříve k testování rychlosti těchto příkazů.
Jak můžete vidět v tomto příkladu, if-ELSE prohlášení jsou rychlejší. Podívejme se, co se stalo, když k těmto příkladům přidám další podmínky a změním proměnnou na typ řetězce.
Jako výsledek, příkaz SWITCH je rychlejší pro více podmínek, ale výsledek je podobný.
Pokud máte ve skriptu Powershell více než 4 podmínky, doporučujeme zvážit použití příkazů SWITCH.
dalším důvodem pro zvážení
dalším důvodem pro zvážení použití příkazů SWITCH je, že kód Powershell je srozumitelnější. Pomáhá rychleji upravovat kód a snižovat počet chyb.
musíte si však uvědomit, že nemůžete nahradit všechny podmínky příkazy přepínače. Pomáhá vám pouze testovat výrazy s jedinou hodnotou. Nemůžete jej například použít ke kontrole, zda je hodnota větší. Chcete-li to provést, musíte použít příkaz IF-ELSE.
závěr
doufám, že vysvětlím, proč byste měli zvážit použití příkazů SWITCH ve skriptech Powershell.
Chcete-li se dozvědět více o příkazech Switch, doporučujeme navštívit stránku dokumentace společnosti Microsoft nebo skvělý článek o powershellexplained.KOMA.