Condividi tramite


Pop-Location

Modifica la posizione corrente nella posizione di cui è stato eseguito l'ultimo push nello stack.

Sintassi

Default (Impostazione predefinita)

Pop-Location
    [-PassThru]
    [-StackName <String>]
    [<CommonParameters>]

Descrizione

Il cmdlet Pop-Location modifica il percorso corrente nel percorso di cui è stato eseguito l'ultimo push nello stack usando il cmdlet Push-Location. È possibile visualizzare una posizione dallo stack predefinito o da uno stack creato usando un comando Push-Location.

Esempio

Esempio 1: Passare alla posizione più recente

PS C:\> Pop-Location

Questo comando modifica la posizione nel percorso aggiunto più di recente allo stack corrente.

Esempio 2: Passare alla posizione più recente in uno stack denominato

PS C:\> Pop-Location -StackName "Stack2"

Questo comando modifica la posizione nel percorso aggiunto più di recente allo stack di percorsi Stack2.

Per altre informazioni sugli stack di posizioni, vedere la Notes.

Esempio 3: Spostarsi tra posizioni per provider diversi

PS C:\> pushd HKLM:\Software\Microsoft\PowerShell
PS HKLM:\Software\Microsoft\PowerShell> pushd Cert:\LocalMachine\TrustedPublisher
PS cert:\LocalMachine\TrustedPublisher> popd
PS HKLM:\Software\Microsoft\PowerShell> popd
PS C:\>

Questi comandi usano i cmdlet Push-Location e Pop-Location per spostarsi tra percorsi supportati da provider di PowerShell diversi. I comandi usano l'alias pushd per Push-Location e l'alias di popd per Pop-Location.

Il primo comando esegue il push del percorso del file system corrente nello stack e passa all'unità HKLM supportata dal provider del Registro di sistema di PowerShell.

Il secondo comando esegue il push del percorso del Registro di sistema nello stack e passa a un percorso supportato dal provider di certificati PowerShell.

Gli ultimi due comandi esegnino tali posizioni dallo stack. Il primo comando popd torna all'unità del Registro di sistema e il secondo comando torna all'unità del file system.

Parametri

-PassThru

Passa un oggetto che rappresenta la posizione alla pipeline. Per impostazione predefinita, questo cmdlet non genera alcun output.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-StackName

Specifica lo stack di posizioni da cui viene estratta la posizione. Immettere un nome dello stack di percorsi.

Senza questo parametro, Pop-Location viene visualizzata una posizione dallo stack di posizioni corrente. Per impostazione predefinita, lo stack di percorsi corrente è lo stack di percorsi predefinito senza nome creato da PowerShell. Per impostare uno stack di percorsi nello stack di percorsi corrente, usare il parametro StackName del cmdlet Set-Location. Per altre informazioni sugli stack di posizioni, vedere la Notes.

Pop-Location non può visualizzare una posizione dallo stack predefinito senza nome, a meno che non sia lo stack di percorsi corrente.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

None

Non è possibile inviare tramite pipe l'input a questo cmdlet.

Output

None, System.Management.Automation.PathInfo

Questo cmdlet genera un oggetto System.Management.Automation.PathInfo che rappresenta la posizione, se si specifica il parametro PassThru . In caso contrario, questo cmdlet non genera alcun output.

Note

PowerShell supporta più spazi di esecuzione per processo. Ogni spazio di esecuzione ha la propria directory attuale. Non è uguale a [System.Environment]::CurrentDirectory. Questo comportamento può essere un problema quando si chiamano le API .NET o si eseguono applicazioni native senza fornire percorsi di directory espliciti.

Anche se i cmdlet location hanno impostato la directory corrente a livello di processo, non è possibile dipendere da esso perché un altro spazio di esecuzione potrebbe modificarlo in qualsiasi momento. È consigliabile usare i cmdlet location per eseguire operazioni basate sul percorso usando la directory di lavoro corrente specifica dello spazio di esecuzione corrente.

Uno stack è un elenco first-out ultimo in cui è possibile accedere solo all'elemento aggiunto più di recente. È possibile aggiungere elementi a uno stack nell'ordine in cui vengono usati e quindi recuperarli per l'uso nell'ordine inverso. PowerShell consente di archiviare i percorsi del provider negli stack di posizioni.

PowerShell crea uno stack di percorsi predefinito senza nome ed è possibile creare più stack di percorsi denominati. Se non si specifica un nome dello stack, PowerShell usa lo stack di percorsi corrente. Per impostazione predefinita, il percorso predefinito senza nome è lo stack di percorsi corrente, ma è possibile usare il cmdlet Set-Location per modificare lo stack di percorsi corrente.

Per gestire gli stack di percorsi, usare i cmdlet di PowerShell *-Location, come indicato di seguito:

  • Per aggiungere una posizione a uno stack di percorsi, usare il cmdlet Push-Location.

  • Per ottenere una posizione da uno stack di percorsi, usare il cmdlet Pop-Location.

  • Per visualizzare i percorsi nello stack di percorsi corrente, usare il parametro Stack del cmdlet Get-Location.

  • Per visualizzare i percorsi in uno stack di percorsi denominato, usare il parametro StackName del cmdlet Get-Location.

  • Per creare un nuovo stack di percorsi, usare il parametro StackName del cmdlet Push-Location. Se si specifica uno stack che non esiste, Push-Location crea lo stack.

  • Per impostare uno stack di percorsi nello stack di percorsi corrente, usare il parametro StackName del cmdlet Set-Location.

Lo stack di percorsi predefinito senza nome è completamente accessibile solo quando si tratta dello stack di percorsi corrente. Se si crea uno stack di percorsi denominato nello stack di percorsi corrente, non è più possibile usare i cmdlet Push-Location o Pop-Location per aggiungere o ottenere elementi dallo stack predefinito oppure usare il cmdlet Get-Location per visualizzare i percorsi nello stack senza nome. Per rendere lo stack senza nome lo stack corrente, usare il parametro StackName del cmdlet Set-Location con un valore di $Null o una stringa vuota ("").

È anche possibile fare riferimento a Pop-Location dal relativo alias predefinito popd. Per altre informazioni, vedere about_Aliases.

Pop-Location è progettato per lavorare con i dati esposti da qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare Get-PSProvider. Per altre informazioni, consultare about_Providers.