Push-Location
Adiciona o local atual à parte superior de uma pilha de localização.
Sintaxe
Path (Default)
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 localização. Se você especificar um caminho, Push-Location enviará o local atual para uma pilha de localização 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 localização.
Por padrão, o cmdlet Push-Location envia o local atual para a pilha de localização atual, mas você pode usar o parâmetro StackName para especificar uma pilha de localização alternativa. Se a pilha não existir, Push-Location a criará.
Para obter mais informações sobre pilhas de localização, consulte o Notes.
Exemplos
Exemplo 1
Este exemplo envia por push o local atual para a pilha de localização 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 de localização em qualquer unidade do PowerShell (PSDrive).
Exemplo 3
Esse comando envia por push o local atual para a pilha padrão. Ele não altera o local.
PS C:\> Push-Location
Exemplo 4 – Criar e usar uma pilha nomeada
Esses 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 envia o local atual para uma nova pilha chamada Stack2 e, em seguida, altera o local atual para o diretório inicial, representado no comando pelo símbolo de bloco (~), que quando usado em unidades de provedor FileSystem é equivalente a $HOME.
Se Stack2 ainda não existir na sessão, Push-Location a criará. O segundo comando usa o cmdlet Pop-Location para colocar o local original (C:\) na pilha Stack2. Sem o parâmetro StackName, Pop-Location pop-lo 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
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | PSPath, LP |
Conjuntos de parâmetros
LiteralPath
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-PassThru
Passa um objeto que representa o local para o pipeline. Por padrão, esse cmdlet não gera nenhuma saída.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Path
Altera seu local para o local especificado por esse caminho depois que ele adiciona (envia por push) o local atual para a parte superior da pilha. Insira um caminho para qualquer local cujo provedor dê suporte a esse cmdlet. Caracteres curinga são permitidos. O nome do parâmetro é opcional.
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
Path
| Cargo: | 1 |
| Obrigatório: | False |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-StackName
Especifica a pilha de localização à qual o local atual é adicionado. Insira um nome de pilha de localização.
Se a pilha não existir, Push-Location a criará.
Sem esse parâmetro, Push-Location adiciona o local à 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.
Observação
Push-Location não pode adicionar um local à pilha padrão sem nome, a menos que seja a pilha de localização atual.
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | Default stack |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | 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 esse 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 Push-Location:
- Todas as Plataformas:
pushd
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 está acessível. 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 Localização 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-Locationcriará 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 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 na sessão, digite Get-PSProvider. Para obter mais informações, consulte about_Providers.