about_Providers

Rövid leírás

Ismerteti, hogy a PowerShell-szolgáltatók hogyan biztosítják az olyan adatokhoz és összetevőkhöz való hozzáférést, amelyek egyébként nem lennének könnyen elérhetők a parancssorban. Az adatok egy fájlrendszer-meghajtóhoz hasonló egységes formátumban jelennek meg.

Hosszú leírás

A PowerShell-szolgáltatók .NET-programok, amelyek hozzáférést biztosítanak a speciális adattárakhoz a könnyebb megtekintés és kezelés érdekében. Az adatok egy meghajtón jelennek meg, és az adatokat egy olyan elérési úton érheti el, mint a merevlemezen. A szolgáltató által támogatott beépített parancsmagok bármelyikével kezelheti az adatokat a szolgáltatói meghajtón. Emellett olyan egyéni parancsmagokat is használhat, amelyeket kifejezetten az adatokhoz terveztek.

A szolgáltatók dinamikus paramétereket is hozzáadhatnak a beépített parancsmagokhoz. Ezek a paraméterek csak akkor érhetők el, ha a parancsmagot a szolgáltatói adatokkal használja.

Beépített szolgáltatók

A PowerShell beépített szolgáltatókat tartalmaz, amelyek különböző típusú objektumokhoz biztosítanak hozzáférést.

  • Alias szolgáltató
    • Meghajtó – Alias:
    • Objektumtípusok – System.Management.Automation.AliasInfo
  • tanúsítványszolgáltató
    • Meghajtó – Cert:
    • Objektumtípusok – Microsoft.PowerShell.Commands.X509StoreLocation, System.Security.Cryptography.X509Certificates.X509Certificate2
  • környezeti szolgáltató
    • Meghajtó – Env:
    • Objektumtípusok – System.Collections.DictionaryEntry
  • Fájlrendszer szolgáltató
    • Meghajtó – C: és egyéb hardvertől függően
    • Objektumtípusok – System.IO.FileInfo, System.IO.DirectoryInfo
  • függvény szolgáltató
    • Meghajtó – Function:
    • Objektumtípusok – System.Management.Automation.FunctionInfo
  • beállításjegyzék- szolgáltató
    • Meghajtó – HKLM:, HKCU:
    • Objektumtípusok – Microsoft.Win32.RegistryKey
  • változó szolgáltató
    • Meghajtó – Variable:
    • Objektumtípusok – System.Management.Automation.PSVariable
  • WSMan szolgáltató
    • Meghajtó – WSMan:
    • Objektumtípusok – Microsoft.WSMan.Management.WSManConfigContainerElement

Saját PowerShell-szolgáltatókat is létrehozhat, és telepíthet olyan szolgáltatókat, amelyeket mások fejlesztenek. A munkamenetben elérhető szolgáltatók listájához írja be a következőt:

Get-PSProvider

Jegyzet

A Tanúsítvány, Beállításjegyzékés WSMan szolgáltatók csak a Windows platformon érhetők el.

Szolgáltatók telepítése és eltávolítása

A szolgáltatók általában PowerShell-modulokon keresztül vannak telepítve. A modul importálása betölti a szolgáltatót a munkamenetbe. A beépített szolgáltatók nem távolíthatók el. Eltávolíthatja a más modulok által betöltött szolgáltatókat.

A szolgáltatót az Remove-Module parancsmaggal távolíthatja el az aktuális munkamenetből. Ez a parancsmag nem távolítja el a szolgáltatót, de elérhetetlenné teszi a szolgáltatót a munkamenetben.

A Remove-PSDrive parancsmaggal eltávolíthat minden meghajtót az aktuális munkamenetből. A meghajtón lévő adatokra nincs hatással, de a meghajtó már nem érhető el ebben a munkamenetben.

Szolgáltatók megtekintése

A PowerShell-szolgáltatók a számítógépen való megtekintéséhez írja be a következőt:

Get-PSProvider

A kimenet felsorolja a munkamenethez hozzáadott beépített szolgáltatókat és szolgáltatókat.

A szolgáltatói parancsmagok

Az alábbi parancsmagok úgy vannak kialakítva, hogy bármely szolgáltató által közzétett adatokkal működjenek együtt. Ugyanezeket a parancsmagokat ugyanúgy használhatja a szolgáltatók által elérhetővé tott különböző adattípusok kezelésére. Miután elsajátította egy szolgáltató adatainak kezelését, ugyanazokat az eljárásokat használhatja bármely szolgáltató adataival.

A New-Item parancsmag például létrehoz egy új elemet. A C: szolgáltató által támogatott meghajtón a New-Item használatával hozhat létre új fájlt vagy mappát. A beállításjegyzék- szolgáltató által támogatott meghajtókon a New-Item használatával új beállításkulcsot hozhat létre. A Alias: meghajtón a New-Item használatával hozhat létre új aliast.

A következő parancsmagok bármelyikével kapcsolatos részletes információkért írja be a következőt:

Get-Help <cmdlet-name> -Detailed

ChildItem-parancsmagok

Tartalomparancsmagok

Elemparancsmagok

ItemProperty parancsmagok

Hely parancsmagjai

Elérésiút-parancsmagok

PSDrive-parancsmagok

PSProvider-parancsmagok

Szolgáltató adatainak megtekintése

A szolgáltató elsődleges előnye, hogy ismerős és konzisztens módon teszi elérhetővé az adatait. Az adatbemutató modellje egy fájlrendszer-meghajtó.

A szolgáltató lehetővé teszi az adattár elemeinek megtekintését, navigálását és módosítását úgy, mintha azok egy fájlrendszerbeli adatok lennének. Az adattár a támogatott meghajtó nevével érhető el.

A meghajtó megjelenik a Get-PSProvider parancsmag alapértelmezett megjelenítésében, de a Get-PSDrive parancsmaggal információkat kaphat a szolgáltatói meghajtóról. A függvény: meghajtó összes tulajdonságának lekéréséhez például írja be a következőt:

Get-PSDrive Function | Format-List *

A szolgáltatói meghajtón lévő adatok ugyanúgy tekinthetők meg és mozoghatnak, mint egy fájlrendszer-meghajtón.

Egy szolgáltatói meghajtó tartalmának megtekintéséhez használja a Get-Item vagy Get-ChildItem parancsmagokat. Írja be a meghajtó nevét, majd egy kettőspontot (:). A Alias: meghajtó tartalmának megtekintéséhez például írja be a következőt:

Get-Item Alias:

Az adatokat egy másik meghajtó bármelyik meghajtójában megtekintheti és kezelheti úgy, hogy a meghajtó nevét az elérési útba foglalja. Ha például egy másik meghajtóról szeretné megtekinteni a HKLM\Software beállításkulcsot a HKLM: meghajtón, írja be a következőt:

Get-ChildItem HKLM:\SOFTWARE\

A meghajtó megnyitásához használja a Set-Location parancsmagot. Jegyezze meg a kettőspontot a meghajtó elérési útjának megadásakor. Ha például a helyet a Cert: meghajtó gyökérkönyvtárára szeretné módosítani, írja be a következőt:

Set-Location Cert:

Ezután a Cert: meghajtó tartalmának megtekintéséhez írja be a következőt:

Get-ChildItem

Hierarchikus adatok mozgatása

A szolgáltatói meghajtón ugyanúgy mozoghat, mint egy merevlemez-meghajtón. Ha az adatok elemek hierarchiájában vannak elrendezve, használjon fordított perjelet (\) a gyermekelem jelzéséhez. Használja a következő formátumot:

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

Ha például a helyet a HKLM\Software beállításkulcsra szeretné módosítani, írjon be egy Set-Location parancsot, például:

Set-Location HKLM:\SOFTWARE\

Ha a teljes név bármely eleme szóközöket tartalmaz, a nevet idézőjelek közé kell foglalnia ("). Az alábbi példa egy szóközöket tartalmazó teljes elérési utat mutat be.

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

A helyekre mutató relatív hivatkozásokat is használhat. A pont (.) az aktuális helyet jelöli. Ha például a HKLM:\Software\Microsoft beállításkulcsban van, és fel szeretné sorolni a beállításjegyzék alkulcsait a HKLM:\Software\Microsoft\PowerShell kulcsban, írja be a következő parancsot:

Get-ChildItem .\PowerShell

A kettős pont (..) a címtárra vagy tárolóra is vonatkozik közvetlenül az aktuális hely felett. A szolgáltatói hierarchiában két pont (..) használatával navigálhat.

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

Szolgáltató kezdőlapja

A szolgáltatóknak Otthoni helye is van. Ezt a helyet a szolgáltató által támogatott összes PSDrives megosztja. Ez a szolgáltató Home tulajdonságának megtekintésével kérhető le.

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

A Fájlrendszer-szolgáltató az egyetlen olyan szolgáltató, amelynek alapértelmezett értéke Otthoni. Ugyanaz az érték, mint $HOME. További információ: about_Automatic_Variables.

A Kezdőlap könyvtárat az aktuális munkamenethez a tulajdonságával állíthatja be.

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

A ~ karakter a szolgáltató kezdőkönyvtárának jelölésére használható. Ha a szolgáltató nem rendelkezik Otthoni helykészlettel, hibaüzenet jelenik meg.

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
...

Dinamikus paraméterek keresése

A dinamikus paraméterek olyan parancsmagparaméterek, amelyeket egy szolgáltató ad hozzá egy parancsmaghoz. Ezek a paraméterek csak akkor érhetők el, ha a parancsmagot a hozzáadó szolgáltató használja.

A Cert: meghajtó például hozzáadja a CodeSigningCert paramétert a Get-Item és Get-ChildItem parancsmagokhoz. Ezt a paramétert csak akkor használhatja, ha Get-Item vagy Get-ChildItem használ a Cert: meghajtón.

A szolgáltató által támogatott dinamikus paraméterek listáját a szolgáltató súgófájljában találja. Típus:

Get-Help <provider-name>

Például:

Get-Help Certificate

Ismerkedés a szolgáltatókkal

Bár az összes szolgáltatói adat megjelenik a meghajtókon, és ugyanazokat a módszereket használja az áthaladásukhoz, a hasonlóság ott megáll. A szolgáltató által elérhetővé tetsző adattárak olyan változatosak lehetnek, mint az Active Directory-helyek és a Microsoft Exchange Server-postaládák.

Az egyes PowerShell-szolgáltatókkal kapcsolatos információkért írja be a következőt:

Get-Help <ProviderName>

Például:

Get-Help Registry

A szolgáltatókkal kapcsolatos súgótémakörök listájához írja be a következőt:

Get-Help * -Category Provider

Lásd még