← Anasayfa

Sürece Parametre Switch (-) Kavramı ve Esneklik Sınırı

ScriptingPowerShell

Yazdığınız bir betikte, 'Kardeşim bana -DetayliDök' (Verbose gibi) isimli bir bayrak uzatırlarsa kodu ona göre işlerim, uzatmazlarsa düz işlerim mantığını nasıl yaparsanız? Parametre bloklarında (Kodu süsleyen tepeler) düz String yerine Switch (Anahtar) zekası konur.

param(
    [string]$SunucuAdi,
    [switch]$YenidenBaslat
)

if ($YenidenBaslat) {
    Write-Host "Yeniden Baslatma Talebi Alindi (-YenidenBaslat Parametresi Gecildi!)"
    Restart-Computer -ComputerName $SunucuAdi
}

Bu harika şey şuna yarar; Kod çalıştırırken siz Terminal> BenimBetik.ps1 -SunucuAdi "Fileserver" yollarsanız sadece içine bakar. Fakat işkilliyseniz sonuna ... -SunucuAdi MS1 -YenidenBaslat ibaresini yazdığınızda içerideki o $YenidenBaslat hücresi anında TRUE formatına döner ve alt yapıyı devindirir. PowerShell parametrelerinin en süslü ve klas olan mimari formudur.