about_Environment_Provider

Nome provider

Ambiente

Unità

Env:

Funzionalità

ShouldProcess

Descrizione breve

Fornisce l'accesso alle variabili di ambiente di Windows.

Descrizione dettagliata

Il provider di ambiente PowerShell consente di ottenere, aggiungere, modificare, cancellare ed eliminare variabili di ambiente e valori in PowerShell.

Le variabili di ambiente sono variabili denominate dinamicamente che descrivono l'ambiente in cui vengono eseguiti i programmi. Windows e PowerShell usano variabili di ambiente per archiviare informazioni persistenti che influiscono sull'esecuzione del sistema e del processo. A differenza delle variabili di PowerShell, le variabili di ambiente non sono soggette a vincoli di ambito.

L'unità Environment è uno spazio dei nomi flat contenente le variabili di ambiente specifiche della sessione dell'utente corrente. Le variabili di ambiente non hanno elementi figlio.

Il provider Environment supporta i cmdlet seguenti, illustrati in questo articolo.

Tipi esposti da questo provider

Ogni variabile di ambiente è un'istanza della classe System.Collections.DictionaryEntry . Il nome della variabile corrisponde alla chiave del dizionario. Il valore della variabile di ambiente corrisponde al valore del dizionario.

Il provider environment espone l'archivio dati nell'unità Env: . Per usare le variabili di ambiente, modificare la posizione dell'unità Env: (Set-Location Env:) o lavorare da un'altra unità di PowerShell. Per fare riferimento a una variabile di ambiente da un'altra posizione, usare il nome dell'unità Env: nel percorso.

Set-Location Env:

Per tornare in un'unità di file system, digitare il relativo nome. Ad esempio, digitare il comando seguente:

Set-Location C:

È anche possibile usare il provider environment da qualsiasi altra unità di PowerShell. Per fare riferimento a una variabile di ambiente da un'altra posizione, usare il nome Env: dell'unità nel percorso.

Il provider Environment espone anche le variabili di ambiente usando un prefisso variabile di $env:. Il comando seguente visualizza il contenuto della variabile di ambiente ProgramFiles . Il $env: prefisso della variabile può essere usato da qualsiasi unità di PowerShell.

PS C:\> $env:ProgramFiles
C:\Program Files

È anche possibile modificare il valore di una variabile di ambiente usando il prefisso della $env: variabile. Tutte le modifiche apportate riguardano solo la sessione di PowerShell corrente, purché sia attiva.

Nota

PowerShell usa gli alias per consentire un modo familiare per usare i percorsi del provider. I comandi, dir ad esempio e ls sono ora alias per Get-ChildItem, cd è un alias per Set-Location. e pwd è un alias per Get-Location.

Recupero di variabili di ambiente

Questo comando elenca tutte le variabili di ambiente nella sessione corrente.

Get-Item -Path Env:

È possibile usare questo comando da qualsiasi unità di PowerShell.

Il provider di ambiente non ha contenitori, quindi il comando precedente ha lo stesso effetto quando viene usato con Get-ChildItem.

Get-ChildItem -Path Env:

Ottenere una variabile di ambiente selezionata

Questo comando ottiene la variabile di WINDIR ambiente.

Get-ChildItem -Path Env:windir

È anche possibile usare il formato del prefisso della variabile.

$env:windir

Creare una variabile di ambiente

Questo comando crea la USERMODE variabile di ambiente con il valore "Non-Admin". Il valore del -Path parametro crea il nuovo elemento nell'unità Env: . La nuova variabile di ambiente è utilizzabile solo nella sessione di PowerShell corrente, purché sia attiva.

PS C:\> New-Item -Path Env: -Name USERMODE -Value Non-Admin

Modifica di una variabile di ambiente

Rinominare una variabile di ambiente

Questo comando usa il Rename-Item cmdlet per modificare il nome della variabile di USERMODE ambiente creata in USERROLE. Non cambiare il nome di una variabile di ambiente usata dal sistema. Anche se queste modifiche hanno effetto solo nella sessione corrente, potrebbero causare il funzionamento non corretto del sistema o di un programma.

Rename-Item -Path Env:USERMODE -NewName USERROLE

Modificare una variabile di ambiente

Questo comando usa il Set-Item cmdlet per modificare il valore della variabile di USERROLE ambiente in "Administrator".

Set-Item -Path Env:USERROLE -Value Administrator

Copiare una variabile di ambiente

Questo comando copia il valore della USERROLE variabile di ambiente nella USERROLE2 variabile di ambiente.

Copy-Item -Path Env:USERROLE -Destination Env:USERROLE2

Rimuovere una variabile di ambiente

Questo comando elimina la USERROLE2 variabile di ambiente dalla sessione corrente.

Remove-Item -Path Env:USERROLE2

Rimuovere una variabile di ambiente con Clear-Item

Questo comando elimina la USERROLE variabile di ambiente cancellandone il valore.

Clear-Item -Path Env:USERROLE

Uso della pipeline

I cmdlet del provider accettano l'input della pipeline. È possibile usare la pipeline per semplificare l'attività inviando i dati del provider da un cmdlet a un altro cmdlet del provider. Per altre informazioni su come usare la pipeline con i cmdlet del provider, vedere i riferimenti ai cmdlet forniti in questo articolo.

Visualizzazione delle informazioni della Guida

A partire da Windows PowerShell 3.0, è possibile ottenere argomenti della Guida personalizzati per i cmdlet del provider che ne illustrano il comportamento in un'unità di file system.

Per ottenere gli argomenti della Guida personalizzati per l'unità del file system, eseguire un comando Get-Help in un'unità file system o usare il -Path parametro Get-Help per specificare un'unità del file system.

Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path env:

Vedi anche