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
- Drive-
- Penyedia sertifikat
- Drive-
Cert:
- Jenis objek - Microsoft.PowerShell.Commands.X509StoreLocation, System.Security.Cryptography.X509Certificates.X509Certificate2
- Drive-
- Penyedia lingkungan
- Drive-
Env:
- Jenis objek - System.Collections.DictionaryEntry
- Drive-
- Penyedia FileSystem
- Drive -
C:
dan lainnya tergantung pada perangkat keras - Jenis objek - System.IO.FileInfo, System.IO.DirectoryInfo
- Drive -
- Penyedia fungsi
- Drive-
Function:
- Jenis objek - System.Management.Automation.FunctionInfo
- Drive-
- Penyedia registri
- Drive -
HKLM:
,HKCU:
- Jenis objek - Microsoft.Win32.RegistryKey
- Drive -
- Penyedia variabel
- Drive-
Variable:
- Jenis objek - System.Management.Automation.PSVariable
- Drive-
- Penyedia WSMan
- Drive-
WSMan:
- Jenis objek - Microsoft.WSMan.Management.WSManConfigContainerElement
- Drive-
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
- Hapus Item
- Salin-Item
- Dapatkan Item
- Invoke-Item
- Pindahkan Item
- Item Baru
- Hapus Item
- Ganti Nama-Item
- Set-Item
Cmdlet ItemProperty
- Clear-ItemProperty
- Copy-ItemProperty
- Get-ItemProperty
- Move-ItemProperty
- ItemProperty Baru
- Remove-ItemProperty
- Ganti nama-ItemProperty
- Set-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