Condividi tramite


about_Locations

Descrizione breve

Viene descritto come accedere agli elementi dal percorso di lavoro in PowerShell.

Descrizione lunga

Il percorso di lavoro corrente è il percorso predefinito in cui puntano i comandi. In altre parole, si tratta del percorso usato da PowerShell se non si fornisce un percorso esplicito all'elemento o alla posizione interessata dal comando.

Nota

PowerShell supporta più spazi di esecuzione per processo. Ogni spazio di esecuzione ha la propria directory corrente. Non è uguale alla directory corrente del processo di PowerShell: [System.Environment]::CurrentDirectory.

Ad esempio, è possibile impostare la posizione di lavoro corrente sulla posizione seguente:

Set-Location C:\Program Files\PowerShell

Di conseguenza, tutti i comandi vengono elaborati da questa posizione, a meno che non venga specificato in modo esplicito un altro percorso.

PowerShell mantiene la posizione di lavoro corrente per ogni unità anche quando l'unità non è l'unità corrente. In questo modo è possibile accedere agli elementi dalla posizione di lavoro corrente facendo riferimento solo all'unità di un'altra posizione. Si supponga, ad esempio, che la posizione di lavoro corrente sia C:\Windows. Si supponga ora di usare il comando seguente per modificare la posizione di lavoro corrente nell'unità HKLM: :

Set-Location HKLM:

Anche se la posizione corrente è ora l'unità del Registro di sistema, è comunque possibile accedere agli elementi nella C:\Windows directory usando l'unità C: , come illustrato nell'esempio seguente:

Get-ChildItem C:

PowerShell ricorda che il percorso di lavoro corrente per tale unità è la Windows directory, quindi recupera gli elementi da tale directory. I risultati sono gli stessi se è stato eseguito il comando seguente:

Get-ChildItem C:\Windows

In PowerShell è possibile usare il Get-Location comando per determinare la posizione di lavoro corrente ed è possibile usare il Set-Location comando per impostare la posizione di lavoro corrente. Ad esempio, il comando seguente imposta la posizione di lavoro corrente sulla Windows directory dell'unità C: :

Set-Location C:\Windows

Dopo aver impostato il percorso di lavoro corrente, è comunque possibile accedere agli elementi da altre unità includendo il nome dell'unità (seguito da due punti) nel comando, come illustrato nell'esempio seguente:

Get-ChildItem HKLM:\software

Il comando di esempio recupera un elenco di elementi nel contenitore Software dell'hive HKEY_LOCAL_MACHINE nel Registro di sistema.

PowerShell consente anche di usare caratteri speciali per rappresentare la posizione di lavoro corrente e la relativa posizione padre. Per rappresentare la posizione di lavoro corrente, usare un singolo punto. Per rappresentare l'elemento padre della posizione di lavoro corrente, utilizzare due punti. Ad esempio, il codice seguente specifica la System sottodirectory nella posizione di lavoro corrente:

Get-ChildItem .\System

Se la posizione di lavoro corrente è C:\Windows, questo comando restituisce un elenco di tutti gli elementi in C:\Windows\System. Tuttavia, se si usano due punti, viene usata la directory padre della directory di lavoro corrente, come illustrato nell'esempio seguente:

Get-ChildItem ..\"Program Files"

In questo caso, PowerShell considera i due punti come unità C: in modo che il comando recuperi tutti gli elementi nella C:\Program Files directory.

Un percorso che inizia con una barra rovesciata (\) identifica un percorso dalla radice dell'unità corrente. Ad esempio, se la posizione di lavoro corrente è C:\Program Files\PowerShell, la radice dell'unità è C:\. Di conseguenza, il comando seguente elenca tutti gli elementi nella C:\Windows directory:

Get-ChildItem \Windows

Se non si specifica un percorso che inizia con un nome di unità, una barra rovesciata () o un punto (\.) quando si specifica il nome di un contenitore o di un elemento, si presuppone che il contenitore o l'elemento si trovi nella posizione di lavoro corrente. Ad esempio, se la posizione di lavoro corrente è C:\Windows, il comando seguente restituisce tutti gli elementi nella C:\Windows\System directory:

Get-ChildItem System

Se si specifica un nome file anziché un nome di directory, PowerShell restituisce i dettagli su tale file ,presupponendo che il file si trovi nel percorso di lavoro corrente.

Vedi anche