Bagikan melalui


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
    • Mengendarai- Alias:
    • Jenis objek - System.Management.Automation.AliasInfo
  • penyedia Sertifikat
    • Mengendarai- Cert:
    • Jenis objek - Microsoft.PowerShell.Commands.X509StoreLocation, System.Security.Cryptography.X509Certificates.X509Certificate2
  • Penyedia lingkungan
    • Mengendarai- 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
    • Mengendarai- Function:
    • Jenis objek - System.Management.Automation.FunctionInfo
  • penyedia Registri
    • Drive - HKLM:, HKCU:
    • Jenis objek - Microsoft.Win32.RegistryKey
  • penyedia variabel
    • Mengendarai- Variable:
    • Jenis objek - System.Management.Automation.PSVariable
  • penyedia WSMan
    • Mengendarai- 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

Nota

Sertifikat, Registri, dan penyedia 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 cmdlet Remove-Module. Cmdlet ini tidak menghapus instalan penyedia, tetapi membuat penyedia tidak tersedia dalam sesi.

Anda juga dapat menggunakan cmdlet Remove-PSDrive 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, cmdlet New-Item membuat item baru. Di drive C: 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. Di drive Alias:, 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

  • Get-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 default cmdlet Get-PSProvider, tetapi Anda bisa mendapatkan informasi tentang drive penyedia menggunakan cmdlet Get-PSDrive. 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 cmdlet Get-Item atau Get-ChildItem. Ketik nama drive diikuti dengan titik dua (:). Misalnya, untuk melihat konten drive Alias:, 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 kunci registri HKLM\Software di drive HKLM: dari drive lain, ketik:

Get-ChildItem HKLM:\SOFTWARE\

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

Set-Location Cert:

Kemudian, untuk melihat konten drive Cert:, 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 kunci registri HKLM\Software, ketik perintah Set-Location, 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 kunci registri HKLM:\Software\Microsoft, dan Anda ingin mencantumkan subkuntah registri di kunci HKLM:\Software\Microsoft\PowerShell, 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 Home. Lokasi ini dibagikan oleh semua PSDrives didukung oleh penyedia. Ini dapat diambil dengan melihat properti Home 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 Home 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 kumpulan lokasi Home, 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, drive Cert: menambahkan parameter CodeSigningCert ke cmdlet Get-Item dan Get-ChildItem. Anda hanya dapat menggunakan parameter ini saat menggunakan Get-Item atau Get-ChildItem di drive Cert:.

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

Get-Help <provider-name>

Misalnya:

Get-Help Certificate

Mempelajari 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 Exchange Server.

Untuk informasi tentang penyedia PowerShell individual, ketik:

Get-Help <ProviderName>

Misalnya:

Get-Help Registry

Untuk daftar topik Bantuan tentang penyedia, ketik:

Get-Help * -Category Provider

Lihat juga