Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kısa açıklama
PowerShell'de komut parametreleriyle nasıl çalışıldığı açıklanır.
Uzun açıklama
Cmdlet'ler, işlevler ve betikler gibi PowerShell komutlarının çoğu, kullanıcıların seçenekleri belirlemesine veya giriş sağlamasına olanak sağlamak için parametrelere dayanır. Parametreler komut adını izler ve aşağıdaki forma sahiptir:
-<parameter_name> <parameter_value>
-<parameter_name>:<parameter_value>
Parametrenin adından önce bir kısa çizgi (-) bulunur ve bu kısa çizgi, PowerShell'e kısa çizgiden sonraki kelimenin bir parametre adı olduğunu belirtir. Parametre adı ve değeri bir boşluk veya iki nokta üst üste karakteriyle ayrılabilir. Bazı parametreler parametre değeri gerektirmez veya kabul etmemektedir. Diğer parametreler bir değer gerektirir, ancak komutta parametre adını gerektirmez.
Parametrelerin türü ve bu parametrelerin gereksinimleri farklılık gösterir. Bir komutun parametreleri hakkında bilgi bulmak için Get-Help cmdlet'ini kullanın. Örneğin, Get-ChildItem cmdlet'in parametreleri hakkında bilgi bulmak için şunu yazın:
Get-Help Get-ChildItem
Bir betiğin parametreleri hakkında bilgi bulmak için betik dosyasının tam yolunu kullanın. Mesela:
Get-Help $HOME\Documents\Scripts\Get-Function.ps1
Get-Help cmdlet'i komutla ilgili açıklama, komut söz dizimi, parametrelerle ilgili bilgiler ve komuttaki parametrelerin nasıl kullanılacağını gösteren örnekler gibi çeşitli ayrıntıları döndürür.
Ayrıca, belirli bir parametre hakkında bilgi bulmak için Get-Help cmdlet'in Parameter parametresini de kullanabilirsiniz. İsterseniz, komutun tüm parametreleri hakkında bilgi bulmak için Parametresi parametresini joker karakter ( * ) değeriyle kullanabilirsiniz. Örneğin, aşağıdaki komut Get-Member cmdlet'in tüm parametreleri hakkında bilgi alır:
Get-Help Get-Member -Parameter *
Varsayılan parametre değerleri
İsteğe bağlı parametreler, komutta parametre belirtilmediğinde kullanılan veya varsayılan değer olan bir varsayılan değere sahiptir.
Örneğin, birçok cmdlet'in ComputerName parametresinin varsayılan değeri yerel bilgisayarın adıdır. Sonuç olarak, ComputerName parametresi belirtilmediği sürece komutta yerel bilgisayar adı kullanılır.
Varsayılan parametre değerini bulmak için cmdlet'in yardım konusuna bakın. Parametre açıklaması varsayılan değeri içermelidir.
Ayrıca bir cmdlet veya gelişmiş işlevin herhangi bir parametresi için özel bir varsayılan değer ayarlayabilirsiniz. Özel varsayılan değerleri ayarlama hakkında bilgi için bkz. about_Parameters_Default_Values.
Parametre öznitelik tablosu
Tam, Parametreveya cmdlet'in Get-Help parametrelerini kullandığınızda, Get-Help parametre hakkında ayrıntılı bilgi içeren bir parametre öznitelik tablosu görüntüler.
Bu bilgiler, parametresini kullanmak için bilmeniz gereken ayrıntıları içerir.
Örneğin, Get-ChildItem cmdlet'inin yardım konusu Path parametresiyle ilgili aşağıdaki ayrıntıları içerir:
-Path <string[]>
Specifies a path of one or more locations. Wildcard characters are
permitted. The default location is the current directory (.).
Required? false
Position? 0
Default value Current directory
Accept pipeline input? true (ByValue, ByPropertyName)
Accept wildcard characters? true
Parametre bilgileri parametre söz dizimini, parametrenin açıklamasını ve parametre özniteliklerini içerir. Aşağıdaki bölümlerde parametre öznitelikleri açıklanmaktadır.
Parametre Gerekli
Bu ayar parametrenin zorunlu olup olmadığını, yani bu cmdlet'i kullanan tüm komutların bu parametreyi içermesi gerekip gerekmediğini gösterir. Değer True olduğunda ve komutta parametre eksik olduğunda, PowerShell sizden parametre için bir değer girmenizi ister.
Parametre Konumu
Position ayarı negatif olmayan bir tamsayıya ayarlanırsa parametre adı gerekli değildir. Bu parametre türü konumsal parametre olarak adlandırılır ve sayı, parametrenin diğer konumsal parametrelerle ilişkili olarak görünmesi gereken konumu gösterir. Adlandırılmış parametre, cmdlet adından sonraki herhangi bir konumda listelenebilir. Konumsal parametrenin parametre adını eklerseniz, parametre cmdlet adından sonra herhangi bir konumda listelenebilir.
Örneğin, Get-ChildItem cmdlet'inin Path ve Exclude adlı parametreleri vardır.
Position için ayarı 0şeklindedir ve bu da bunun konumsal bir parametre olduğu anlamına gelir.
Position Dışla için ayarı olarak adlandırılmış.
Bu, yol
Bu iki parametrenin Position ayarlarının bir sonucu olarak, aşağıdaki komutlardan herhangi birini kullanabilirsiniz:
Get-ChildItem -Path C:\techdocs -Exclude *.ppt
Get-ChildItem C:\techdocs -Exclude *.ppt
Get-ChildItem -Exclude *.ppt -Path C:\techdocs
Get-ChildItem -Exclude *.ppt C:\techdocs
Parametre adını eklemeden başka bir konumsal parametre ekleyebilmeniz için, bu parametrenin Position ayarı tarafından belirtilen sırada yerleştirilmesi gerekir.
Parametre Türü
Bu ayar, parametre değerinin Microsoft .NET Framework türünü belirtir. Örneğin, tür int32`) eklenmelidir.
Varsayılan Değer
Bu ayar, başka bir değer sağlanmazsa parametrenin varsayacağı değeri belirtir. Örneğin, Path parametresinin varsayılan değeri genellikle geçerli dizindir. Gerekli parametrelerin hiçbir zaman varsayılan değeri yoktur. Çoğu isteğe bağlı parametre için, parametresi kullanılmadığı takdirde hiçbir etkisi olmadığından varsayılan değer yoktur.
Birden Çok Değer Kabul Eder
Bu ayar, bir parametrenin birden çok parametre değeri kabul edip etmediğini gösterir. Parametre birden çok değer kabul ettiğinde, komuttaki parametrenin değeri olarak virgülle ayrılmış bir liste yazabilir veya virgülle ayrılmış listeyi (dizi) bir değişkene kaydedebilir ve ardından parametre değeri olarak değişkeni belirtebilirsiniz.
Örneğin, cmdlet'in Get-Service parametresi birden çok değer kabul eder. Aşağıdaki komutların her ikisi de geçerlidir:
Get-Service -Name winrm, netlogon
$s = "winrm", "netlogon"
Get-Service -Name $s
İşlem Hattı Girişini Kabul Eder
Bu ayar, parametreye bir değer göndermek için işlem hattı işlecini (|) kullanıp kullanamayacağınızı gösterir.
Value Description
----- -----------
False Indicates that you cannot pipe a value to the
parameter.
True (by Value) Indicates that you can pipe any value to the
parameter, just so the value has the .NET
Framework type specified for the parameter or the
value can be converted to the specified .NET
Framework type.
Bir parametre "True (Değere Göre)" olduğunda PowerShell, komutu yorumlamak için diğer yöntemleri denemeden önce kanallı değerleri bu parametreyle ilişkilendirmeye çalışır.
True (by Property Name) Indicates that you can pipe a value to the
parameter, but the .NET Framework type of the
parameter must include a property with the same
name as the parameter.
Örneğin, bir değeri yalnızca Nameadlı bir özelliğe sahip olduğunda Name parametresine yöneltebilirsiniz.
Not
İşlem hattı girişini () veya (by Valueby PropertyName) kabul eden türetilen parametre, parametrede gecikme bağlama betik bloklarının kullanılmasını sağlar.
Delay-bind betik bloğu ParameterBinding sırasında otomatik olarak çalıştırılır. Sonuç parametresine bağlıdır. Veya türü ScriptBlockSystem.Objectolarak tanımlanan parametreler için gecikme bağlaması çalışmaz, betik bloğu çağrılmadan geçirilir.
Gecikme bağlama betik blokları hakkında bilgi edinmek için about_Script_Blocks.md dosyasını buradan okuyabilirsiniz
Joker Karakterleri Kabul Eder
Bu ayar, parametre değerinin joker karakter içerip içermediğini gösterir, böylece parametre değeri hedef kapsayıcıdaki birden fazla var olan öğeyle eşleştirilebilir.
Ortak Parametreler
Yaygın parametreler, herhangi bir cmdlet ile kullanabileceğiniz parametrelerdir. Yaygın parametreler hakkında daha fazla bilgi için bkz. about_CommonParameters.
Ayrıca bakınız
PowerShell