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.
Sağlayıcı adı
Fonksiyon
Drives
Function:
Capabilities
İşlem Yapmalı
Kısa açıklama
PowerShell'de tanımlanan işlevlere erişim sağlar.
Ayrıntılı açıklama
PowerShell İşlevi sağlayıcısı, PowerShell'deki işlevleri ve filtreleri almanıza, eklemenize, değiştirmenize, temizlemenize ve silmenize olanak tanır.
İşlev, bir eylem gerçekleştiren adlandırılmış kod bloğudur. İşlev adını yazdığınızda işlevdeki kod çalışır. Filtre, bir eylem için koşullar oluşturan adlandırılmış bir kod bloğudur. Koşul yerine filtrenin adını yazabilirsiniz, örneğin bir Where-Object komutunda.
İşlevi sürücüsü, yalnızca işlev ve filtre nesnelerini içeren düz bir ad alanıdır. İşlevlerin veya filtrelerin alt öğeleri yoktur.
İşlevi sağlayıcısı, bu makalede ele alınan aşağıdaki cmdlet'leri destekler.
- Konum-Al
- Konumu Ayarla
- Öğe al
- Yeni Öğe
- Öğe kaldırma
- Öğeyi Temizle
Bu sağlayıcı tarafından kullanıma sunulan türler
Her işlev, System.Management.Automation.FunctionInfo sınıfının bir örneğidir. Her filtre, System.Management.Automation.FilterInfo sınıfının bir örneğidir.
İşlev sürücüsünde gezinme
İşlevi sağlayıcısı veri deposunu Function: sürücüsünde kullanıma sunar. İşlevlerle çalışmak için konumunuzu Function: sürücüsüne (Set-Location Function:) değiştirebilirsiniz. Alternatif olarak, başka bir PowerShell sürücüsünden de çalışabilirsiniz. Başka bir konumdan bir işleve başvurmak için yoldaki sürücü adını (Function:) kullanın.
Set-Location Function:
Bir dosya sistemi sürücüsüne dönmek için sürücü adını yazın. Örneğin, şunu yazın:
Set-Location C:
Ayrıca başka bir PowerShell sürücüsünden İşlevi sağlayıcısıyla da çalışabilirsiniz. Başka bir konumdan bir işleve başvurmak için yoldaki sürücü adını Function: kullanın.
Not
PowerShell, sağlayıcı yollarıyla çalışmayı tanıdık hale getirmek için takma adlar kullanır.
İşlevleri alma
Bu komut geçerli oturumdaki tüm işlevlerin listesini alır. Bu komutu herhangi bir PowerShell sürücüsünden kullanabilirsiniz.
Get-ChildItem -Path Function:
İşlev sağlayıcısının kapsayıcısı yoktur, bu nedenle yukarıdaki komut Get-ChildItemile kullanıldığında aynı etkiye sahiptir.
Get-ChildItem -Path Function:
aşağıda gösterildiği gibi Tanımı özelliğine erişerek işlevin tanımını alabilirsiniz.
(Get-Item -Path Function:more).Definition
Ayrıca, bir işlevin tanımını dolar işareti ($) ön ekli sağlayıcı yolunu kullanarak da alabilirsiniz.
$Function:more
Adında tire (-) bulunan bir işlevin tanımını almak için, dolar işaretinden sonraki değeri küme ayraçlarına alın.
${Function:Clear-Host}
Seçilen işlevleri edinme
Bu komut man sürücüsünden Function: işlevini alır. İşlevi almak için Get-Item cmdlet'ini kullanır. İşlem hattı operatörü (|), sonucu Format-Table'e gönderir.
-Wrap parametresi, satıra sığmayan metni bir sonraki satıra yönlendirir.
-AutoSize parametresi, metni sığdırmak için tablo sütunlarını yeniden boyutlandırır.
Get-Item -Path man | Format-Table -Wrap -AutoSize
Fonksiyon sağlayıcı yollarıyla çalışma
Bu komutların her ikisi de C:adlı işlevi alır. İlk komut herhangi bir sürücüde kullanılabilir. İkinci komut Function: sürücüsünde kullanılır. Ad, bir sürücünün söz dizimi olan iki nokta üst üste ile sona erdiğinden, yolu sürücü adı ile belirtmeniz gerekir.
Function: sürücüsünde iki biçimi de kullanabilirsiniz. İkinci komutta nokta (.) geçerli konumu temsil eder.
PS C:\> Get-Item -Path Function:c:
PS Function:\> Get-Item -Path .\c:
İşlev oluşturma
Bu komut, New-Itemadlı bir işlev oluşturmak için Win32: cmdlet'ini kullanır.
Küme ayraçlarındaki ifade, işlev adıyla temsil edilen betik bloğudur.
New-Item -Path Function:Win32: -Value {Set-Location C:\Windows\System32}
Kapsamlar
Değişkenler gibi işlevler de belirli bir kapsama aittir. İşlev oluşturduğunuzda, yalnızca oluşturulduğu kapsamda kullanılabilir. İşlevi kullanılabilir hale getirmek için, işlevi oluştururken kapsam değiştirici kullanın. Daha fazla bilgi için bkz. about_Scopes.
Aşağıdaki örnekte, genel kapsamda bir işlev oluşturmak için Global: kapsam değiştiricisi kullanılmaktadır.
function New-Function {
param(
[string] $Name,
[scriptblock] $Script
)
$lp = "Function:\Global:$($Name)"
Set-Item -LiteralPath $lp -Value $Script -PassThru -Force
}
New-Function -Name 'Win32:' -Script { Set-Location C:\Windows\System32 }
Global: kapsam değiştiricisi olmadan işlev yerel kapsamda oluşturulur.
New-Function çıktığında yeni oluşturulan işlev artık mevcut olmayacaktır.
İşlev silme
Bu komut geçerli oturumdan more işlevini siler.
Remove-Item Function:more
İşlevi değiştirme
Bu komut, Set-Item işlevini yol bilgisinden önce saati görüntüleyecek şekilde değiştirmek için prompt cmdlet'ini kullanır.
Set-Item -Path Function:prompt -Value {
'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '
}
İşlevi yeniden adlandırma
Bu komut, Rename-Item işlevinin adını helpolarak değiştirmek için gh cmdlet'ini kullanır.
Rename-Item -Path Function:help -NewName gh
İşlev kopyalama
Bu komut, işlevini öğesine oldPromptkopyalar prompt ve komut istemi işleviyle ilişkili betik bloğu için etkili bir şekilde yeni bir ad oluşturur.
Bunu, değiştirmeyi planlıyorsanız özgün istem işlevini kaydetmek için kullanabilirsiniz.
Yeni işlevin Seçenekleri özelliği Nonedeğerine sahiptir.
Seçenekleri özelliğinin değerini değiştirmek için Set-Itemkullanın.
Copy-Item -Path Function:prompt -Destination Function:oldPrompt
Dinamik parametreler
Dinamik parametreler, bir PowerShell sağlayıcısı tarafından eklenen cmdlet parametreleridir ve yalnızca cmdlet sağlayıcı etkin sürücüde kullanıldığında kullanılabilir.
[System.Management.Automation.ScopedItemOptions] seçeneği <>
bir işlevin Seçenekleri özelliğinin değerini belirler.
-
None: Seçenek yok.Nonevarsayılan değerdir. -
Constant: İşlev silinemez ve özellikleri değiştirilemez.Constantyalnızca işlev oluştururken kullanılabilir. Var olan bir işlevin seçeneğiniConstantolarak değiştiremezsiniz. -
Private: İşlev yalnızca geçerli kapsamda görünür - (alt kapsamlar içinde değil).
-
ReadOnly:-Forceparametresinin kullanılması dışında işlevin özellikleri değiştirilemez. İşlevi silmek içinRemove-Itemkullanabilirsiniz. -
AllScope: İşlev, oluşturulan tüm yeni kapsamlara kopyalanır.
Desteklenen cmdlet'ler
Yeni Öğe
İşlem hattını kullanma
Sağlayıcı cmdlet'leri boru hattı girişini kabul eder. Bir cmdlet'ten başka bir sağlayıcı cmdlet'ine sağlayıcı verileri göndererek görevi basitleştirmek için işlem hattını kullanabilirsiniz. İşlem hattını sağlayıcı cmdlet'leriyle kullanma hakkında geniş çapta bilgi edinmek için bu makalenin tamamında sağlanan cmdlet başvurularına bakın.
Yardım alma
Windows PowerShell 3.0'dan başlayarak, bu cmdlet'lerin bir dosya sistemi sürücüsünde nasıl davrandığını açıklayan sağlayıcı cmdlet'leri için özelleştirilmiş yardım konuları alabilirsiniz.
Dosya sistemi sürücüsü için özelleştirilmiş yardım konularını almak için, bir dosya sistemi sürücüsünde Get-Help komutunu çalıştırın veya bir dosya sistemi sürücüsü belirtmek için -Path parametresini kullanın.
Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path Function:
Ayrıca bakınız
PowerShell