ARGOMENTO
about_Providers
DESCRIZIONE BREVE
Descrive come i provider di Windows PowerShell consentono
l'accesso a dati e componenti che altrimenti non sarebbero facilmente
accessibili dalla riga di comando. I dati sono presentati in un
formato coerente analogo a un'unità del file system.
DESCRIZIONE DETTAGLIATA
I provider di Windows PowerShell sono programmi basati su
Microsoft .NET Framework che rendono disponibili in Windows
PowerShell i dati di archivi dati specializzati per consentirne la
visualizzazione e la gestione.
I dati esposti da un provider vengono visualizzati in un'unità e vi si
accede tramite un percorso come in un'unità del disco rigido. È possibile
utilizzare qualsiasi cmdlet predefinito supportato dal provider per
gestire i dati dell'unità del provider. Inoltre, è possibile
utilizzare i cmdlet personalizzati progettati specificamente per i dati.
I provider possono inoltre aggiungere parametri dinamici ai cmdlet
predefiniti. Si tratta di parametri disponibili solo quando si
utilizza il cmdlet con i dati del provider.
PROVIDER PREDEFINITI
In Windows PowerShell sono inclusi vari provider predefiniti che
è possibile utilizzare per accedere ai diversi tipi di archivi dati.
Provider Drive Archivio dati
-------- ----- ---------------------------
Alias Alias: Alias di Windows PowerShell
Certificate Cert: Certificati X509 per le firme digitali
Environment Env: Variabili di ambiente Windows
FileSystem * Unità, directory e file del file system
Function Function: Funzioni di Windows PowerShell
Registry HKLM:, HKCU Registro di sistema di Windows
Variable Variable: Variabili di Windows PowerShell
WS-Management WSMan Informazioni di configurazione di WS-Management
* Le unità FileSystem variano in ogni sistema.
È inoltre possibile creare provider di Windows PowerShell
personalizzati e installare i provider sviluppati da altri. Per
elencare i provider disponibili nella sessione, digitare:
get-psprovider
INSTALLAZIONE E RIMOZIONE DEI PROVIDER
I provider di Windows PowerShell sono forniti mediante gli snap-in di
Windows PowerShell, che sono programmi basati su .NET Framework
compilati in forma di file DLL. Gli snap-in possono includere
provider e cmdlet.
Prima di utilizzare le funzionalità del provider, è necessario
installare lo snap-in e aggiungerlo alla sessione di Windows
PowerShell. Per ulteriori informazioni, vedere about_PsSnapins.
Non è possibile disinstallare un provider, sebbene si possa
rimuovere dalla sessione corrente lo snap-in di Windows
PowerShell relativo al provider in questione. In questo caso,
verrà rimosso tutto il contenuto dello snap-in, inclusi i cmdlet.
Per rimuovere un provider dalla sessione corrente, utilizzare il
cmdlet Remove-PsSnapin. Questo cmdlet non scarica né disinstalla
il provider, bensì lo rende non disponibile nella sessione.
Inoltre è possibile utilizzare il cmdlet Remove-PsDrive per rimuovere
qualsiasi unità dalla sessione corrente. I dati dell'unità non
vengono intaccati, sebbene l'unità stessa non sia più disponibile
nella sessione.
VISUALIZZAZIONE DEI PROVIDER
Per visualizzare i provider di Windows PowerShell disponibili nel
computer, digitare:
get-psprovider
Nell'output vengono elencati i provider predefiniti e quelli che
sono stati aggiunti alla sessione.
CMDLET PROVIDER
I cmdlet seguenti sono progettati per l'utilizzo dei dati esposti da
qualsiasi provider. È possibile utilizzare gli stessi cmdlet nello
stesso modo per gestire diversi tipi di dati esposti dai provider.
Dopo avere appreso come gestire i dati di un provider, è possibile
utilizzare le stesse procedure con i dati di qualsiasi provider.
Ad esempio, il cmdlet New-Item crea un nuovo elemento. Nell'unità C:
supportata dal provider FileSystem, è possibile utilizzare New-Item
per creare un nuovo file o una nuova cartella. Nelle unità supportate
dal provider Registry, è possibile utilizzare New-Item per creare una
nuova chiave del Registro di sistema. Nell'unità Alias:, è possibile
utilizzare New-Item per creare un nuovo alias.
Per informazioni dettagliate su qualsiasi dei seguenti cmdlet, digitare:
get-help <nome-cmdlet> -detailed
CMDLET CHILDITEM
Get-ChildItem
CMDLET CONTENT
Add-Content
Clear-Content
Get-Content
Set-Content
CMDLET ITEM
Clear-Item
Copy-Item
Get-Item
Invoke-Item
Move-Item
New-Item
Remove-Item
Rename-Item
Set-Item
CMDLET ITEMPROPERTY
Clear-ItemProperty
Copy-ItemProperty
Get-ItemProperty
Move-ItemProperty
New-ItemProperty
Remove-ItemProperty
Rename-ItemProperty
Set-ItemProperty
CMDLET LOCATION
Get-Location
Pop-Location
Push-Location
Set-Location
CMDLET PATH
Join-Path
Convert-Path
Split-Path
Resolve-Path
Test-Path
CMDLET PSDRIVE
Get-PSDrive
New-PSDrive
Remove-PSDrive
CMDLET PSPROVIDER
Get-PSProvider
VISUALIZZAZIONE DEI DATI DEI PROVIDER
Il principale vantaggio di un provider è che i dati vengono
esposti in modo coerente e usuale. Il modello adottato per la
presentazione dei dati è un'unità del file system.
Per utilizzare i dati esposti dal provider, li si visualizza, li
si scorre e li si modifica come se si trattasse dei dati in un
disco rigido. Pertanto, l'informazione più importante su un
provider è il nome dell'unità da esso supportata.
L'unità è indicata nella visualizzazione predefinita del cmdlet Get-
PsProvider, tuttavia è possibile ottenere informazioni sull'unità del
provider utilizzando il cmdlet Get-PsDrive. Ad esempio, per ottenere
tutte le proprietà dell'unità Function:, digitare:
get-psdrive Function | format-list *
È possibile visualizzare e scorrere i dati dell'unità di un
provider allo stesso modo di quelli di un'unità del file system.
Per visualizzare il contenuto dell'unità di un provider, utilizzare il
cmdlet Get-Item o Get-ChildItem. Digitare il nome dell'unità seguito
dai due punti (:). Ad esempio, per visualizzare il contenuto
dell'unità Alias:, digitare:
get-item alias:
È possibile visualizzare e gestire i dati di un'unità da un'altra
unità includendo il nome dell'unità nel percorso. Ad esempio, per
visualizzare la chiave del Registro di sistema HKLM\Software
nell'unità HKLM: da un'altra unità, digitare:
get-childitem hklm:\software
Per aprire l'unità, utilizzare il cmdlet Set-Location. Non
omettere i due punti quando si specifica il percorso dell'unità.
Ad esempio, per modificare il percorso impostandolo sulla
directory radice dell'unità Cert:, digitare:
set-location cert:
Quindi, per visualizzare il contenuto dell'unità Cert:, digitare:
get-childitem
SPOSTAMENTO TRA I DATI GERARCHICI
È possibile spostarsi nell'unità di un provider come se si
trattasse di un disco rigido. Se i dati sono ordinati in forma
gerarchica, ossia se gli elementi sono contenuti dentro altri
elementi, utilizzare la barra rovesciata (\) per indicare un
elemento figlio. Utilizzare il formato seguente:
unità:\percorso\posizione-figlio\...
Ad esempio, per modificare il percorso impostandolo sulla chiave del
Registro di sistema HKLM\Software, utilizzare il comando Set-Location
nel modo seguente:
set-location hklm:\software
È anche possibile utilizzare i riferimenti relativi ai percorsi.
Un punto (.) rappresenta il percorso corrente. Se ad esempio ci
si trova nella chiave del Registro di sistema HKLM:\Software\Micro
soft e si desidera elencare le sottochiavi del Registro di
sistema nella chiave HKLM:\Software\Micrsoft\PowerShell, digitare
il comando seguente:
get-childitem .\powershell
INDIVIDUAZIONE DEI PARAMETRI DINAMICI
I parametri dinamici sono parametri dei cmdlet aggiunti a un
cmdlet da un provider. Questi parametri sono disponibili solo
quando il cmdlet viene utilizzato dal provider che lo ha aggiunto.
Ad esempio, l'unità Cert: aggiunge il parametro CodeSigningCert
ai cmdlet Get-Item e Get-ChildItem. È possibile utilizzare questo
parametro solo quando si utilizza Get-Item o Get-ChildItem
nell'unità Cert:.
Per l'elenco dei parametri dinamici supportati da un provider,
vedere il file di informazioni relativo al provider in questione.
Digitare:
get-help <nome-provider>
Ad esempio:
get-help certificate
INFORMAZIONI SUI PROVIDER
Sebbene tutti i dati dei provider vengano visualizzati nelle
unità e si utilizzino gli stessi metodi per spostarsi tra di essi, le
somiglianze si esauriscono qui. Gli archivi dati esposti da un
provider possono variare considerevolmente, spaziando dai percorsi di
Active Directory alle cassette postali di Microsoft Exchange Server.
Per informazioni sui singoli provider di Windows PowerShell, digitare:
get-help <NomeProvider>
Ad esempio:
get-help registry
Per un elenco di argomenti della Guida sui provider, digitare:
get-help * -category provider
VEDERE ANCHE
about_Locations
about_Path_Syntax