about_Providers

Kısa açıklama

PowerShell sağlayıcılarının komut satırından kolayca erişilmeyecek verilere ve bileşenlere nasıl erişim sağladığını açıklar. Veriler, dosya sistemi sürücüsüne benzeyen tutarlı bir biçimde sunulur.

Uzun açıklama

PowerShell sağlayıcıları, daha kolay görüntüleme ve yönetim için özelleştirilmiş veri depolarına erişim sağlayan .NET programlarıdır. Veriler bir sürücüde görünür ve verilere sabit disk sürücüsünde yaptığınız gibi bir yolda erişebilirsiniz. Sağlayıcı sürücüsündeki verileri yönetmek için sağlayıcının desteklediği yerleşik cmdlet'lerden herhangi birini kullanabilirsiniz. Ayrıca, özellikle veriler için tasarlanmış özel cmdlet'ler kullanabilirsiniz.

Sağlayıcılar, yerleşik cmdlet'lere dinamik parametreler de ekleyebilir. Bu parametreler yalnızca sağlayıcı verileriyle cmdlet'ini kullandığınızda kullanılabilir.

Yerleşik sağlayıcılar

PowerShell, farklı nesne türlerine erişim sağlayan bir dizi yerleşik sağlayıcı içerir.

  • Diğer ad sağlayıcısı
    • Sürücü- Alias:
    • Nesne türleri - System.Management.Automation.AliasInfo
  • Sertifika sağlayıcısı
    • Sürücü- Cert:
    • Nesne türleri - Microsoft.PowerShell.Commands.X509StoreLocation, System.Security.Cryptography.X509Certificates.X509Certificate2
  • Ortam sağlayıcısı
    • Sürücü- Env:
    • Nesne türleri - System.Collections.DictionaryEntry
  • FileSystem sağlayıcısı
    • Sürücü - C: ve donanıma bağlı olarak diğer
    • Nesne türleri - System.IO.FileInfo, System.IO.DirectoryInfo
  • İşlev sağlayıcısı
    • Sürücü- Function:
    • Nesne türleri - System.Management.Automation.FunctionInfo
  • Kayıt defteri sağlayıcısı
    • Sürücü - HKLM:, HKCU:
    • Nesne türleri - Microsoft.Win32.RegistryKey
  • Değişken sağlayıcısı
    • Sürücü- Variable:
    • Nesne türleri - System.Management.Automation.PSVariable
  • WSMan sağlayıcısı
    • Sürücü- WSMan:
    • Nesne türleri - Microsoft.WSMan.Management.WSManConfigContainerElement

Ayrıca kendi PowerShell sağlayıcılarınızı oluşturabilir ve başkalarının geliştirdiği sağlayıcıları yükleyebilirsiniz. Oturumunuzda kullanılabilen sağlayıcıları listelemek için şunu yazın:

Get-PSProvider

Not

Sertifika, Kayıt Defteri ve WSMan sağlayıcıları yalnızca Windows platformunda kullanılabilir.

Sağlayıcıları yükleme ve kaldırma

Sağlayıcılar genellikle PowerShell modülleri aracılığıyla yüklenir. Modülü içeri aktarmak sağlayıcıyı oturumunuza yükler. Yerleşik sağlayıcıları kaldıramazsınız. Diğer modüller tarafından yüklenen sağlayıcıları kaldırabilirsiniz.

Cmdlet'ini kullanarak geçerli oturumdan bir sağlayıcıyı Remove-Module kaldırabilirsiniz. Bu cmdlet sağlayıcıyı kaldırmaz, ancak sağlayıcıyı oturumda kullanılamaz duruma getirir.

Geçerli oturumdan Remove-PSDrive herhangi bir sürücüyü kaldırmak için cmdlet'ini de kullanabilirsiniz. Sürücüdeki bu veriler etkilenmez, ancak sürücü artık bu oturumda kullanılamaz.

Sağlayıcıları görüntüleme

Bilgisayarınızda PowerShell sağlayıcılarını görüntülemek için şunu yazın:

Get-PSProvider

Çıkışta yerleşik sağlayıcılar ve oturuma eklediğiniz sağlayıcılar listelenir.

Sağlayıcı cmdlet'leri

Aşağıdaki cmdlet'ler herhangi bir sağlayıcı tarafından kullanıma sunulan verilerle çalışacak şekilde tasarlanmıştır. Sağlayıcıların kullanıma sunmaları farklı veri türlerini yönetmek için aynı cmdlet'leri aynı şekilde kullanabilirsiniz. Bir sağlayıcının verilerini yönetmeyi öğrendikten sonra, herhangi bir sağlayıcının verileriyle aynı yordamları kullanabilirsiniz.

Örneğin, New-Item cmdlet yeni bir öğe oluşturur. C: FileSystem sağlayıcısı tarafından desteklenen sürücüde, yeni bir dosya veya klasör oluşturmak için kullanabilirsinizNew-Item. Kayıt defteri sağlayıcısı tarafından desteklenen sürücülerde, yeni bir kayıt defteri anahtarı oluşturmak için kullanabilirsinizNew-Item. Sürücüde Alias: , yeni bir diğer ad oluşturmak için kullanabilirsiniz New-Item .

Aşağıdaki cmdlet'lerden herhangi biri hakkında ayrıntılı bilgi için şunu yazın:

Get-Help <cmdlet-name> -Detailed

ChildItem cmdlet'leri

İçerik Cmdlet'leri

Öğe Cmdlet'leri

ItemProperty cmdlet'leri

Konum cmdlet'leri

Yol cmdlet'leri

PSDrive cmdlet'leri

PSProvider Cmdlet'leri

Sağlayıcı verilerini görüntüleme

Sağlayıcının birincil avantajı, verilerini tanıdık ve tutarlı bir şekilde kullanıma sunmadır. Veri sunumu modeli bir dosya sistemi sürücüsüdür.

Sağlayıcı, veri deposundaki öğeleri bir dosya sistemindeki verilermiş gibi görüntülemenize, gezinmenize ve değiştirmenize olanak tanır. Veri deposuna, desteklediği sürücünün adıyla erişilir.

Sürücü, cmdlet'in Get-PSProvider varsayılan ekranında listelenir, ancak cmdlet'ini Get-PSDrive kullanarak sağlayıcı sürücüsü hakkında bilgi alabilirsiniz. Örneğin, İşlev: sürücüsünün tüm özelliklerini almak için şunu yazın:

Get-PSDrive Function | Format-List *

Bir dosya sistemi sürücüsünde olduğu gibi bir sağlayıcı sürücüsündeki verileri görüntüleyebilir ve taşıyabilirsiniz.

Sağlayıcı sürücüsünün içeriğini görüntülemek için veya Get-ChildItem cmdlet'lerini Get-Item kullanın. Sürücü adını ve ardından iki nokta üst üste (): yazın. Örneğin, sürücünün içeriğini Alias: görüntülemek için şunu yazın:

Get-Item alias:

Sürücü adını yola ekleyerek herhangi bir sürücüdeki verileri başka bir sürücüden görüntüleyebilir ve yönetebilirsiniz. Örneğin, başka bir sürücüden HKLM\Software sürücüdeki HKLM: kayıt defteri anahtarını görüntülemek için şunu yazın:

Get-ChildItem HKLM:\SOFTWARE\

Sürücüyü açmak için cmdlet'ini Set-Location kullanın. Sürücü yolunu belirtirken iki nokta üst üste değerini unutmayın. Örneğin, konumunuzu sürücünün kök dizinine Cert: değiştirmek için şunu yazın:

Set-Location cert:

Ardından, sürücünün içeriğini Cert: görüntülemek için şunu yazın:

Get-ChildItem

Hiyerarşik verilerde gezinme

Bir sabit disk sürücüsünde olduğu gibi bir sağlayıcı sürücüsünde gezinebilirsiniz. Veriler öğeler içindeki öğeler hiyerarşisinde düzenlenmişse, alt öğeyi belirtmek için ters eğik çizgi (\) kullanın. Aşağıdaki biçimi kullanın:

drive:\location\child-location\...

Örneğin, konumunuzu kayıt defteri anahtarıyla HKLM\Software değiştirmek için aşağıdaki gibi bir Set-Location komut yazın:

Set-Location HKLM:\SOFTWARE\

Tam addaki herhangi bir öğe boşluk içeriyorsa, adı çift tırnak işareti (" içine almanız gerekir). Aşağıdaki örnekte, boşluk içeren tam yol gösterilmektedir.

"C:\Program Files\Internet Explorer\iexplore.exe"

Konumlara göreli başvurular da kullanabilirsiniz. Nokta (.) geçerli konumu temsil eder. Örneğin, kayıt defteri anahtarındaysanız HKLM:\Software\Microsoft ve anahtarda kayıt defteri alt anahtarlarını HKLM:\Software\Microsoft\PowerShell listelemek istiyorsanız, aşağıdaki komutu yazın:

Get-ChildItem .\PowerShell

Ayrıca, çift nokta (..) geçerli konumunuzun hemen üstündeki dizine veya kapsayıcıya başvurur. Sağlayıcı hiyerarşisinde gezinmek için çift noktaları (..) kullanabilirsiniz.

PS HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\> cd ..\..\LanmanWorkstation\Parameters
PS HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters>

Sağlayıcı Giriş Sayfası

Sağlayıcıların bir Giriş konumu da vardır. Bu konum sağlayıcı tarafından yedeklenen herkes PSDrives tarafından paylaşılır. Sağlayıcının Home özelliği görüntülenerek alınabilir.

Get-PSProvider | Format-Table Name, Home
Name        Home
----        ----
Registry
Alias
Environment
FileSystem  C:\Users\username
Function
Variable
Certificate

FileSystem sağlayıcısı, Home için varsayılan değere sahip tek sağlayıcıdır. ile aynı değerdir $HOME. Daha fazla bilgi için bkz . about_Automatic_Variables.

Geçerli oturum için bir sağlayıcının Giriş dizinini özelliğini kullanarak ayarlayabilirsiniz.

(Get-PSProvider FileSystem).Home = "C:\"

Karakter, ~ sağlayıcının giriş dizinini temsil etmek için kullanılabilir. Sağlayıcının Giriş konumu ayarlı değilse bir hata görürsünüz.

Cert:\> Set-Location ~
Set-Location : Home location for this provider isn't set. To set the home
location, call "(get-psprovider 'Certificate').Home = 'path'".
At line:1 char:1
+ Set-Location ~
+ ~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Set-Location],
                              PSInvalidOperationException
...

Dinamik parametreleri bulma

Dinamik parametreler, bir sağlayıcı tarafından cmdlet'e eklenen cmdlet parametreleridir. Bu parametreler yalnızca cmdlet'i bunları ekleyen sağlayıcıyla birlikte kullanıldığında kullanılabilir.

Örneğin, Cert: sürücü ve Get-ChildItem cmdlet'lerine Get-Item CodeSigningCert parametresini ekler. Bu parametreyi yalnızca sürücüde Cert: veya Get-ChildItem kullanırken Get-Item kullanabilirsiniz.

Bir sağlayıcının desteklediği dinamik parametrelerin listesi için sağlayıcının Yardım dosyasına bakın. Şunu yazın:

Get-Help <provider-name>

Örneğin:

Get-Help certificate

Sağlayıcılar hakkında bilgi edinme

Tüm sağlayıcı verileri sürücülerde görünse de ve bunlar arasında gezinmek için aynı yöntemleri kullansanız da benzerlik burada durur. Sağlayıcının kullanıma sunulan veri depoları, Active Directory konumları ve Microsoft Exchange Server posta kutuları kadar çeşitli olabilir.

Tek tek PowerShell sağlayıcıları hakkında bilgi için şunu yazın:

Get-Help <ProviderName>

Örneğin:

Get-Help registry

Sağlayıcılarla ilgili Yardım konularının listesi için şunu yazın:

Get-Help * -Category Provider

Ayrıca bkz.