Push-Location
Voegt de huidige locatie toe aan de bovenkant van een locatiestack.
Syntax
Push-Location
[[-Path] <String>]
[-PassThru]
[-StackName <String>]
[<CommonParameters>]
Push-Location
[-LiteralPath <String>]
[-PassThru]
[-StackName <String>]
[<CommonParameters>]
Description
De Push-Location cmdlet voegt de huidige locatie toe aan een locatiestack ( 'pusht'). Als u een pad opgeeft, Push-Location pusht u de huidige locatie naar een locatiestack en wijzigt u vervolgens de huidige locatie in de locatie die door het pad is opgegeven. U kunt de Pop-Location cmdlet gebruiken om locaties op te halen uit de locatiestack.
Push-Location De cmdlet pusht standaard de huidige locatie naar de huidige locatiestack, maar u kunt de parameter StackName gebruiken om een alternatieve locatiestack op te geven. Als de stack niet bestaat, Push-Location maakt u deze.
Zie de notities voor meer informatie over locatiestacks.
Voorbeelden
Voorbeeld 1
In dit voorbeeld wordt de huidige locatie naar de standaardlocatiestack gepusht en wordt de locatie vervolgens gewijzigd in C:\Windows.
PS C:\> Push-Location C:\Windows
Voorbeeld 2
In dit voorbeeld wordt de huidige locatie naar de RegFunction-stack gepusht en wordt de huidige locatie gewijzigd in de HKLM:\Software\Policies locatie.
PS C:\> Push-Location HKLM:\Software\Policies -StackName RegFunction
U kunt de locatie-cmdlets in elk PowerShell-station (PSDrive) gebruiken.
Voorbeeld 3
Met deze opdracht wordt de huidige locatie naar de standaardstack gepusht. De locatie wordt niet gewijzigd.
PS C:\> Push-Location
Voorbeeld 4: Een benoemde stack maken en gebruiken
Deze opdrachten laten zien hoe u een benoemde locatiestack maakt en gebruikt.
PS C:\> Push-Location ~ -StackName Stack2
PS C:\Users\User01> Pop-Location -StackName Stack2
PS C:\>
Met de eerste opdracht wordt de huidige locatie naar een nieuwe stack met de naam Stack2 gepusht en wordt vervolgens de huidige locatie gewijzigd in de basismap, vertegenwoordigd in de opdracht door het tilde-symbool (~), dat wanneer deze wordt gebruikt op stations van een bestandssysteemprovider gelijk is aan $HOME en $env:USERPROFILE.
Als Stack2 nog niet bestaat in de sessie, Push-Location maakt u deze. Met de tweede opdracht wordt de Pop-Location cmdlet gebruikt om de oorspronkelijke locatie (C:\) van de Stack2-stack te openen. Zonder de parameter Pop-LocationStackName wordt de locatie van de niet-benoemde standaardstack weergegeven.
Zie de notities voor meer informatie over locatiestacks.
Parameters
Hiermee geeft u het pad naar de nieuwe locatie. In tegenstelling tot de parameter Path wordt de waarde van de parameter LiteralPath precies gebruikt zoals deze wordt getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escapetekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens geven PowerShell aan dat er geen tekens moeten worden geïnterpreteerd als escapereeksen.
| Type: | String |
| Aliases: | PSPath, LP |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Geeft een object door dat de locatie aan de pijplijn vertegenwoordigt. Deze cmdlet genereert standaard geen uitvoer.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Wijzigt uw locatie in de locatie die door dit pad is opgegeven nadat deze de huidige locatie heeft toegevoegd (gepusht) naar de bovenkant van de stack. Voer een pad in naar een locatie waarvan de provider ondersteuning biedt voor deze cmdlet. Jokertekens zijn toegestaan. De parameternaam is optioneel.
| Type: | String |
| Position: | 1 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | True |
Hiermee geeft u de locatiestack waaraan de huidige locatie wordt toegevoegd. Voer de naam van een locatiestack in.
Als de stack niet bestaat, Push-Location maakt u deze.
Zonder deze parameter voegt Push-Location u de locatie toe aan de huidige locatiestack. De huidige locatiestack is standaard de niet-benoemde standaardlocatiestack die door PowerShell wordt gemaakt.
Als u een locatiestack de huidige locatiestack wilt maken, gebruikt u de parameter StackName van de Set-Location cmdlet. Zie de notities voor meer informatie over locatiestacks.
Notitie
Push-Location kan geen locatie toevoegen aan de niet-benoemde standaardstack, tenzij dit de huidige locatiestack is.
| Type: | String |
| Position: | Named |
| Default value: | Default stack |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Invoerwaarden
U kunt een tekenreeks die een pad bevat (maar geen letterlijk pad) doorsluisen naar Push-Location.
Uitvoerwaarden
None or System.Management.Automation.PathInfo
Wanneer u de parameter PassThru gebruikt, Push-Location genereert u een System.Management.Automation.PathInfo-object dat de locatie vertegenwoordigt. Anders genereert deze cmdlet geen uitvoer.
Notities
PowerShell ondersteunt meerdere runspaces per proces. Elke runspace heeft een eigen huidige map.
Dit is niet hetzelfde als [System.Environment]::CurrentDirectory. Dit gedrag kan een probleem zijn bij het aanroepen van .NET-API's of het uitvoeren van systeemeigen toepassingen zonder expliciete directorypaden op te geven.
Zelfs als de locatie-cmdlets de huidige map voor het hele proces hebben ingesteld, kunt u er niet van afhankelijk zijn omdat een andere runspace deze op elk gewenst moment kan wijzigen. Gebruik de locatie-cmdlets om padgebaseerde bewerkingen uit te voeren met behulp van de huidige werkmap die specifiek is voor de huidige runspace.
Een stack is een laatste in, first-out lijst waarin alleen het laatst toegevoegde item toegankelijk is. U voegt items toe aan een stapel in de volgorde waarin u ze gebruikt en haalt ze vervolgens op voor gebruik in omgekeerde volgorde. Met PowerShell kunt u providerlocaties opslaan in locatiestacks.
PowerShell maakt een niet-benoemde standaardlocatiestack en u kunt meerdere benoemde locatiestacks maken. Als u geen stacknaam opgeeft, gebruikt PowerShell de huidige locatiestack. Standaard is de niet-benoemde standaardlocatie de huidige locatiestack, maar u kunt de Set-Location cmdlet gebruiken om de huidige locatiestack te wijzigen.
Als u locatiestacks wilt beheren, gebruikt u de PowerShell Location-cmdlets als volgt.
Gebruik de
Push-Locationcmdlet om een locatie toe te voegen aan een locatiestack.Gebruik de
Pop-Locationcmdlet om een locatie op te halen uit een locatiestack.Als u de locaties in de huidige locatiestack wilt weergeven, gebruikt u de stackparameter van de
Get-Locationcmdlet.Als u de locaties in een benoemde locatiestack wilt weergeven, gebruikt u de parameter StackName van de
Get-Locationcmdlet.Als u een nieuwe locatiestack wilt maken, gebruikt u de parameter StackName van de
Push-Locationcmdlet. Als u een stack opgeeft die niet bestaat,Push-Locationmaakt u de stack.Als u een locatiestack de huidige locatiestack wilt maken, gebruikt u de parameter StackName van de
Set-Locationcmdlet.
De niet-benoemde standaardlocatiestack is alleen volledig toegankelijk wanneer dit de huidige locatiestack is.
Als u een benoemde locatiestack maakt, kunt u de huidige locatiestack niet meer gebruiken om items Push-Location toe te voegen of Pop-Location op te halen uit de standaardstack of de Get-Location cmdlet gebruiken om de locaties in de niet-benoemde stack weer te geven. Als u de niet-benoemde stack de huidige stack wilt maken, gebruikt u de parameter StackName van de Set-Location cmdlet met een waarde van $null of een lege tekenreeks ("").
U kunt ook verwijzen naar Push-Location de ingebouwde alias. pushd Zie about_Aliases voor meer informatie.
De Push-Location cmdlet is ontworpen om te werken met de gegevens die door elke provider worden weergegeven. Als u de providers wilt weergeven die beschikbaar zijn in uw sessie, typt u Get-PSProvider. Zie about_Providers voor meer informatie.
Verwante koppelingen
Feedback
Feedback verzenden en weergeven voor