Partilhar via


Push-Location

Adiciona o local atual à parte superior de uma pilha de locais.

Sintaxe

Path (Predefinição)

Push-Location
    [[-Path] <String>]
    [-PassThru]
    [-StackName <String>]
    [<CommonParameters>]

LiteralPath

Push-Location
    [-LiteralPath <String>]
    [-PassThru]
    [-StackName <String>]
    [<CommonParameters>]

Description

O cmdlet Push-Location adiciona ("pushes") o local atual em uma pilha de locais. Se você especificar um caminho, Push-Location empurrará o local atual para uma pilha de locais e, em seguida, alterará o local atual para o local especificado pelo caminho. Você pode usar o cmdlet Pop-Location para obter locais da pilha de locais.

Por padrão, o cmdlet Push-Location envia o local atual para a pilha de local atual, mas você pode usar o parâmetro StackName para especificar uma pilha de local alternativa. Se a pilha não existir, Push-Location a cria.

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

Exemplos

Exemplo 1

Este exemplo envia o local atual para a pilha de locais padrão e, em seguida, altera o local para C:\Windows.

PS C:\> Push-Location C:\Windows

Exemplo 2

Este exemplo envia o local atual para a pilha RegFunction e altera o local atual para o local HKLM:\Software\Policies.

PS C:\> Push-Location HKLM:\Software\Policies -StackName RegFunction

Você pode usar os cmdlets Location em qualquer unidade do PowerShell (PSDrive).

Exemplo 3

Este comando envia o local atual para a pilha padrão. Não altera a localização.

PS C:\> Push-Location

Exemplo 4 - Criar e usar uma pilha nomeada

Estes comandos mostram como criar e usar uma pilha de localização nomeada.

PS C:\> Push-Location ~ -StackName Stack2
PS C:\Users\User01> Pop-Location -StackName Stack2
PS C:\>

O primeiro comando empurra o local atual para uma nova pilha chamada Stack2 e, em seguida, altera o local atual para o diretório base, representado no comando pelo símbolo tilde (~), que quando usado em unidades de provedor de FileSystem é equivalente a $HOME e $env:USERPROFILE.

Se o Stack2 ainda não existir na sessão, Push-Location o criará. O segundo comando usa o cmdlet Pop-Location para exibir o local original (C:\) da pilha Stack2. Sem o parâmetro StackName, Pop-Location abriria o local da pilha padrão sem nome.

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

Parâmetros

-LiteralPath

Especifica o caminho para o novo local. Ao contrário do parâmetro Path, o valor do parâmetro LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como carta curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples indicam ao PowerShell para não interpretar quaisquer caracteres como sequências de escape.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:PSPath, LP

Conjuntos de parâmetros

LiteralPath
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-PassThru

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

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:False
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Path

Altera sua localização para o local especificado por esse caminho depois que ele adiciona (empurra) o local atual na parte superior da pilha. Insira um caminho para qualquer local cujo provedor ofereça suporte a esse cmdlet. Curingas são permitidos. O nome do parâmetro é opcional.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:True
NãoMostrar:False

Conjuntos de parâmetros

Path
Position:1
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-StackName

Especifica a pilha de locais à qual o local atual é adicionado. Insira um nome de pilha de localização. Se a pilha não existir, Push-Location a cria.

Sem esse parâmetro, Push-Location adiciona o local à 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 cmdlet Set-Location. Para obter mais informações sobre pilhas de localização, consulte o Notes.

Observação

Push-Location não pode adicionar um local à pilha padrão sem nome, a menos que seja a pilha de local atual.

Propriedades dos parâmetros

Tipo:String
Default value:Default stack
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

String

Você pode canalizar uma cadeia de caracteres que contém um caminho (mas não um caminho literal) para Push-Location.

Saídas

None or System.Management.Automation.PathInfo

Quando você usa o parâmetro PassThru , Push-Location gera um objeto System.Management.Automation.PathInfo que representa o local. Caso contrário, esse cmdlet não gerará nenhuma saída.

Notas

O PowerShell oferece suporte a vários espaços de execução por processo. Cada ambiente de execução tem o 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 está acessível. 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 cmdlet Set-Location para alterar a pilha de local atual.

Para gerenciar pilhas de localização, use os cmdlets de Localização do PowerShell, da seguinte maneira.

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

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

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

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

  • Para criar uma nova pilha de locais, 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 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 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 se referir a Push-Location por seu alias interno, pushd. Para obter mais informações, consulte about_Aliases.

O cmdlet Push-Location foi 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.