Compartilhar via


Pop-Location

Altera o local atual para o local enviado mais recentemente para a pilha.

Sintaxe

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

Description

O cmdlet Pop-Location altera o local atual para o local enviado mais recentemente para a pilha usando o cmdlet Push-Location. Você pode colocar um local na pilha padrão ou em uma pilha criada usando um comando Push-Location.

Exemplos

Exemplo 1: Alterar para o local mais recente

PS C:\> Pop-Location

Esse comando altera seu local para o local adicionado mais recentemente à pilha atual.

Exemplo 2: alterar para o local mais recente em uma pilha nomeada

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

Esse comando altera seu local para o local adicionado mais recentemente à pilha de localização stack2.

Para obter mais informações sobre pilhas de localização, consulte o Notes.

Exemplo 3: mover-se entre locais para provedores diferentes

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:\>

Esses comandos usam os cmdlets Push-Location e Pop-Location para se mover entre locais compatíveis com diferentes provedores do PowerShell. Os comandos usam o alias pushd para Push-Location e o alias popd para Pop-Location.

O primeiro comando envia o local atual do sistema de arquivos para a pilha e passa para a unidade HKLM compatível com o provedor do Registro do PowerShell.

O segundo comando envia o local do Registro por push para a pilha e passa para um local com suporte do provedor de certificados do PowerShell.

Os dois últimos comandos exibem esses locais fora da pilha. O primeiro comando popd retorna à unidade do Registro e o segundo comando retorna à unidade do sistema de arquivos.

Parâmetros

-PassThru

Passa um objeto que representa o local para o pipeline. Por padrão, esse cmdlet não gera nenhuma saída.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-StackName

Especifica a pilha de localização da qual o local é exibido. Insira um nome de pilha de localização.

Sem esse parâmetro, Pop-Location exibe um local da pilha de localização atual. Por padrão, a pilha de localização atual é a pilha de localização padrão sem nome criada pelo PowerShell. Para tornar uma pilha de localização a pilha de localização atual, use o parâmetro StackName do cmdlet Set-Location. Para obter mais informações sobre pilhas de localização, consulte o Notes.

Pop-Location não pode colocar um local na pilha padrão sem nome, a menos que seja a pilha de localização atual.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

Entradas

None

Você não pode redirecionar objetos para este cmdlet.

Saídas

None

Por padrão, esse cmdlet não retorna nenhuma saída.

PathInfo

Quando você usa o parâmetro PassThru, esse cmdlet retorna um objeto PathInfo que representa o caminho atual após a operação do cmdlet.

Observações

O PowerShell inclui os seguintes aliases para Pop-Location:

  • Todas as Plataformas:
    • popd

O PowerShell dá suporte a vários runspaces por processo. Cada runspace tem seu próprio diretório atual. Isso não é o mesmo que [System.Environment]::CurrentDirectory. Esse comportamento pode ser um problema ao chamar APIs do .NET ou executar aplicativos nativos sem fornecer caminhos de diretório explícitos.

Mesmo se os cmdlets de localização tiverem definido o diretório atual em todo o processo, você não poderá depender dele porque outro runspace pode alterá-lo a qualquer momento. Você deve usar os cmdlets de localização para executar operações baseadas em caminho usando o diretório de trabalho atual específico para o runspace atual.

Uma pilha é uma lista de última entrada e primeira saída na qual apenas o item adicionado mais recentemente pode ser acessado. Você adiciona itens a uma pilha na ordem em que os usa e os recupera para uso na ordem inversa. O PowerShell permite armazenar locais do provedor em pilhas de localização.

O PowerShell cria uma pilha de localização padrão sem nome e você pode criar várias pilhas de localização nomeadas. Se você não especificar um nome de pilha, o PowerShell usará a pilha de localização atual. Por padrão, o local padrão sem nome é a pilha de localização atual, mas você pode usar o cmdlet Set-Location para alterar a pilha de localização atual.

Para gerenciar pilhas de localização, use os cmdlets de *-Location do PowerShell da seguinte maneira:

  • Para adicionar um local a uma pilha de localização, use o cmdlet Push-Location.

  • Para obter um local de uma pilha de localização, use o cmdlet Pop-Location.

  • Para exibir os locais na pilha de localização atual, use o parâmetro Stack do cmdlet Get-Location.

  • Para exibir os locais em uma pilha de localização nomeada, use o parâmetro StackName do cmdlet Get-Location.

  • Para criar uma nova pilha de localização, use o parâmetro StackName do cmdlet Push-Location. Se você especificar uma pilha que não existe, Push-Location criará a pilha.

  • Para tornar uma pilha de localização a pilha de localização atual, use o parâmetro StackName do cmdlet Set-Location.

A pilha de localização padrão sem nome só é totalmente acessível quando é a pilha de localização atual. Se você fizer uma pilha de localização nomeada a pilha de localização atual, não poderá mais usar os cmdlets Push-Location ou Pop-Location para adicionar ou obter itens da pilha padrão ou usar o cmdlet Get-Location para exibir os locais na pilha sem nome. Para tornar a pilha sem nome a pilha atual, use o parâmetro StackName do cmdlet Set-Location com um valor de $Null ou uma cadeia de caracteres vazia ("").

Você também pode consultar Pop-Location por seu alias interno, popd. Para obter mais informações, consulte about_Aliases.

Pop-Location foi projetado para trabalhar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis na sessão, digite Get-PSProvider. Para obter mais informações, consulte about_Providers.