about_Providers

Deskripsi singkat

Menjelaskan bagaimana penyedia PowerShell menyediakan akses ke data dan komponen yang tidak akan mudah diakses di baris perintah. Data disajikan dalam format konsisten yang menyerupai drive sistem file.

Deskripsi panjang

Penyedia PowerShell adalah program .NET yang menyediakan akses ke penyimpanan data khusus untuk tampilan dan manajemen yang lebih mudah. Data muncul di drive, dan Anda mengakses data di jalur seperti yang Anda lakukan di hard disk drive. Anda dapat menggunakan salah satu cmdlet bawaan yang didukung penyedia untuk mengelola data di drive penyedia. Dan, Anda dapat menggunakan cmdlet kustom yang dirancang khusus untuk data.

Penyedia juga dapat menambahkan parameter dinamis ke cmdlet bawaan. Parameter ini hanya tersedia saat Anda menggunakan cmdlet dengan data penyedia.

Penyedia bawaan

PowerShell menyertakan sekumpulan penyedia bawaan yang menyediakan akses ke berbagai jenis objek.

  • Penyedia alias
    • Drive- Alias:
    • Jenis objek - System.Management.Automation.AliasInfo
  • Penyedia sertifikat
    • Drive- Cert:
    • Jenis objek - Microsoft.PowerShell.Commands.X509StoreLocation, System.Security.Cryptography.X509Certificates.X509Certificate2
  • Penyedia lingkungan
    • Drive- Env:
    • Jenis objek - System.Collections.DictionaryEntry
  • Penyedia FileSystem
    • Drive - C: dan lainnya tergantung pada perangkat keras
    • Jenis objek - System.IO.FileInfo, System.IO.DirectoryInfo
  • Penyedia fungsi
    • Drive- Function:
    • Jenis objek - System.Management.Automation.FunctionInfo
  • Penyedia registri
    • Drive - HKLM:, HKCU:
    • Jenis objek - Microsoft.Win32.RegistryKey
  • Penyedia variabel
    • Drive- Variable:
    • Jenis objek - System.Management.Automation.PSVariable
  • Penyedia WSMan
    • Drive- WSMan:
    • Jenis objek - Microsoft.WSMan.Management.WSManConfigContainerElement

Anda juga dapat membuat penyedia PowerShell Anda sendiri, dan Anda dapat menginstal penyedia yang dikembangkan orang lain. Untuk mencantumkan penyedia yang tersedia dalam sesi Anda, ketik:

Get-PSProvider

Catatan

Penyedia Sertifikat, Registri, dan WSMan hanya tersedia di platform Windows.

Menginstal dan menghapus penyedia

Penyedia biasanya diinstal melalui modul PowerShell. Mengimpor modul akan memuat penyedia ke sesi Anda. Anda tidak dapat menghapus instalan penyedia bawaan. Anda dapat menghapus instalan penyedia yang dimuat oleh modul lain.

Anda dapat membongkar penyedia dari sesi saat ini menggunakan Remove-Module cmdlet. Cmdlet ini tidak menghapus instalan penyedia, tetapi membuat penyedia tidak tersedia dalam sesi.

Anda juga dapat menggunakan Remove-PSDrive cmdlet untuk menghapus drive apa pun dari sesi saat ini. Data pada drive ini tidak terpengaruh, tetapi drive tidak lagi tersedia dalam sesi tersebut.

Menampilkan penyedia

Untuk melihat penyedia PowerShell di komputer Anda, ketik:

Get-PSProvider

Output mencantumkan penyedia bawaan dan penyedia yang Anda tambahkan ke sesi.

Cmdlet penyedia

Cmdlet berikut dirancang untuk bekerja dengan data yang diekspos oleh penyedia mana pun. Anda dapat menggunakan cmdlet yang sama dengan cara yang sama untuk mengelola berbagai jenis data yang diekspos penyedia. Setelah belajar mengelola data satu penyedia, Anda dapat menggunakan prosedur yang sama dengan data dari penyedia mana pun.

Misalnya, New-Item cmdlet membuat item baru. C: Di drive yang didukung oleh penyedia FileSystem, Anda dapat menggunakan New-Item untuk membuat file atau folder baru. Di drive yang didukung oleh penyedia Registri , Anda dapat menggunakan New-Item untuk membuat kunci registri baru. Alias: Di drive, Anda dapat menggunakan New-Item untuk membuat alias baru.

Untuk informasi terperinci tentang salah satu cmdlet berikut, ketik:

Get-Help <cmdlet-name> -Detailed

Cmdlet ChildItem

Cmdlet Konten

Cmdlet Item

Cmdlet ItemProperty

Cmdlet lokasi

Cmdlet jalur

Cmdlet PSDrive

Cmdlet PSProvider

Menampilkan data penyedia

Manfaat utama penyedia adalah bahwa ia mengekspos datanya dengan cara yang akrab dan konsisten. Model untuk presentasi data adalah drive sistem file.

Penyedia memungkinkan Anda untuk melihat, menavigasi, dan mengubah item di penyimpanan data seolah-olah mereka adalah data dalam sistem file. Penyimpanan data diakses dengan nama drive yang didukungnya.

Drive tercantum dalam tampilan Get-PSProvider default cmdlet, tetapi Anda bisa mendapatkan informasi tentang drive penyedia menggunakan Get-PSDrive cmdlet. Misalnya, untuk mendapatkan semua properti Fungsi: drive, ketik:

Get-PSDrive Function | Format-List *

Anda dapat melihat dan menelusuri data di drive penyedia seperti yang Anda lakukan pada drive sistem file.

Untuk melihat konten drive penyedia, gunakan Get-Item cmdlet atau Get-ChildItem . Ketik nama drive diikuti dengan titik dua (:). Misalnya, untuk melihat konten Alias: drive, ketik:

Get-Item alias:

Anda dapat melihat dan mengelola data di drive apa pun dari drive lain dengan menyertakan nama drive di jalur. Misalnya, untuk melihat HKLM\Software kunci registri di HKLM: drive dari drive lain, ketik:

Get-ChildItem HKLM:\SOFTWARE\

Untuk membuka drive, gunakan Set-Location cmdlet. Ingat titik dua saat Anda menentukan jalur drive. Misalnya, untuk mengubah lokasi Anda ke direktori Cert: akar drive, ketik:

Set-Location cert:

Kemudian, untuk melihat konten Cert: drive, ketik:

Get-ChildItem

Menelusuri data hierarkis

Anda dapat berpindah melalui drive penyedia seperti yang Anda lakukan pada hard disk drive. Jika data diatur dalam hierarki item dalam item, gunakan garis miring terbalik (\) untuk menunjukkan item anak. Gunakan format berikut:

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

Misalnya, untuk mengubah lokasi Anda ke HKLM\Software kunci registri, ketik Set-Location perintah, seperti:

Set-Location HKLM:\SOFTWARE\

Jika ada elemen dalam nama yang sepenuhnya memenuhi syarat menyertakan spasi, Anda harus mengapit nama dalam tanda kutip ganda ("). Contoh berikut menunjukkan jalur yang sepenuhnya memenuhi syarat yang menyertakan spasi.

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

Anda juga dapat menggunakan referensi relatif ke lokasi. Titik (.) mewakili lokasi saat ini. Misalnya, jika Anda berada di HKLM:\Software\Microsoft kunci registri, dan Anda ingin mencantumkan subkuntah registri di HKLM:\Software\Microsoft\PowerShell kunci, ketik perintah berikut:

Get-ChildItem .\PowerShell

Selain itu, titik ganda (..) mengacu pada direktori atau kontainer tepat di atas lokasi Anda saat ini. Anda dapat menggunakan titik ganda (..) untuk menavigasi melalui hierarki penyedia.

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

Beranda Penyedia

Penyedia juga memiliki lokasi Rumah . Lokasi ini dibagikan oleh semua PSDrives yang didukung oleh penyedia. Ini dapat diambil dengan melihat properti Beranda penyedia.

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

Penyedia FileSystem adalah satu-satunya penyedia yang memiliki nilai default untuk Home. Ini adalah nilai yang sama dengan $HOME. Untuk informasi selengkapnya, lihat about_Automatic_Variables.

Anda dapat mengatur direktori Beranda untuk penyedia, untuk sesi saat ini, menggunakan propertinya.

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

Karakter ~ dapat digunakan untuk mewakili direktori beranda penyedia. Jika penyedia tidak memiliki lokasi Beranda yang ditetapkan, Anda akan melihat kesalahan.

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

Menemukan parameter dinamis

Parameter dinamis adalah parameter cmdlet yang ditambahkan ke cmdlet oleh penyedia. Parameter ini hanya tersedia ketika cmdlet digunakan dengan penyedia yang menambahkannya.

Misalnya, Cert: drive menambahkan parameter CodeSigningCert ke Get-Item cmdlet dan Get-ChildItem . Anda hanya dapat menggunakan parameter ini saat menggunakan Get-Item atau Get-ChildItem di Cert: drive.

Untuk daftar parameter dinamis yang didukung penyedia, lihat file Bantuan untuk penyedia. Jenis:

Get-Help <provider-name>

Contohnya:

Get-Help certificate

Pembelajaran tentang penyedia

Meskipun semua data penyedia muncul di drive dan Anda menggunakan metode yang sama untuk bergerak melaluinya, kesamaan berhenti di sana. Penyimpanan data yang diekspos penyedia dapat bervariasi seperti lokasi Direktori Aktif dan kotak surat Microsoft Server Exchange.

Untuk informasi tentang penyedia PowerShell individual, ketik:

Get-Help <ProviderName>

Contohnya:

Get-Help registry

Untuk daftar topik Bantuan tentang penyedia, ketik:

Get-Help * -Category Provider

Lihat juga