Partilhar via


Pop-Location

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

Sintaxe

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

Description

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

Exemplos

Exemplo 1: Alterar para a localização mais recente

PS C:\> Pop-Location

Este comando altera a sua localização para a localização adicionada mais recentemente à pilha atual.

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

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

Este comando altera sua localização para o local adicionado mais recentemente à pilha de localização Stack2.

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

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 Push-Location cmdlets e Pop-Location para se mover entre locais suportados por diferentes provedores do PowerShell. Os comandos usam o pushd alias para Push-Location e o popd alias para Pop-Location.

O primeiro comando envia o local atual do sistema de arquivos para a pilha e se move para a unidade HKLM suportada pelo provedor de Registro do PowerShell.

O segundo comando envia o local do Registro para a pilha e se move para um local suportado pelo provedor de certificados do PowerShell.

Os dois últimos comandos colocam esses locais fora da pilha. O primeiro popd comando 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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-StackName

Especifica a pilha de locais a partir 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 local atual. Por padrão, a pilha de local atual é a pilha de local padrão sem nome que o PowerShell cria. Para tornar uma pilha de localização a pilha de localização atual, use o parâmetro StackName do Set-Location cmdlet. Para obter mais informações sobre pilhas de localização, consulte as Notas.

Pop-Location não é possível exibir um local da pilha padrão sem nome, a menos que seja a pilha de local atual.

Tipo:String
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

Entradas

None

Não é possível canalizar 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.

Notas

O PowerShell inclui os seguintes aliases para Pop-Location:

  • Todas as plataformas:
    • popd

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

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

Uma pilha é uma lista de último a entrar, primeiro a sair, na qual apenas o item adicionado mais recentemente pode ser acessado. Você adiciona itens a uma pilha na ordem em que os usa e, em seguida, recupera-os para uso na ordem inversa. O PowerShell permite armazenar locais de provedores em pilhas de locais.

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

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

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

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

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

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

  • Para criar uma nova pilha de locais, use o parâmetro StackName do Push-Location cmdlet. 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 Set-Location cmdlet.

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

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

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