Yazımızı Mükemmelleştirmek: Koda Parametre [CmdletBinding()] Ekleme
•
Scripting, powershellPowerShell
Bir kod (eski-sil.ps1) yazdınız diyelim. İçerde C:\ klasör yolu duruyor ve adam dosyayı açıp orayı el ile değiştirdiğinde şenlik oluyordur. Amatör betik yazımı buna denir.
Gerçek profesyonel PowerShell yazımları, sanki asıl makine modülüymüş gibi komut olarak yanına opsiyon alır.
Bunun muhteşem kalıbı (Advanced Functions) ile olur:
[CmdletBinding()]
param (
[Parameter(Mandatory=$true)]
[string]$KlasorYolu,
[Parameter(Mandatory=$false)]
[int]$GunSayisi = 30
)
Write-Verbose "Bu bir arkaplan detayidir"
Siz bu şablonun içini kodlarınız ile kapladığınızda bir daha betiği çalıştıran her kimse o terminalin ona şu zeki soruyu sormasını sağlarsınız: 'Dostum Parametre unuttun, Bana Klasor Yolu (-KlasorYolu) girmeden bu betiği bir adım daha işletemem!'. Sistem parametreyi otomatik formata sokacaktır.