Huidige locatie beheren

Wanneer u door mapsystemen in Bestandenverkenner navigeert, hebt u meestal een specifieke werklocatie, namelijk de huidige geopende map. Items in de huidige map kunnen eenvoudig worden bewerkt door erop te klikken. Voor opdrachtregelinterfaces, zoals Cmd.exe, kunt u het openen wanneer u zich in dezelfde map bevindt als een bepaald bestand door een relatief korte naam op te geven in plaats van het hele pad naar het bestand op te geven. De huidige map wordt de werkmap genoemd.

PowerShell gebruikt het zelfstandig naamwoord Locatie om te verwijzen naar de werkmap en implementeert een reeks cmdlets om uw locatie te onderzoeken en te bewerken.

Uw huidige locatie ophalen (Get-Location)

Voer de Get-Location opdracht in om het pad van uw huidige maplocatie te bepalen:

Get-Location
Path
----
C:\Documents and Settings\PowerUser

Notitie

De Get-Location cmdlet is vergelijkbaar met de pwd-opdracht in de BASH-shell. De Set-Location cmdlet is vergelijkbaar met de cd-opdracht in Cmd.exe.

Uw huidige locatie instellen (set-location)

De Get-Location opdracht wordt gebruikt met de Set-Location opdracht. Met de Set-Location opdracht kunt u uw huidige maplocatie opgeven.

Set-Location -Path C:\Windows

Nadat u de opdracht hebt ingevoerd, ziet u dat u geen directe feedback ontvangt over het effect van de opdracht. De meeste PowerShell-opdrachten die een actie uitvoeren, produceren weinig of geen uitvoer omdat de uitvoer niet altijd nuttig is. Als u wilt controleren of er een geslaagde mapwijziging is opgetreden wanneer u de Set-Location opdracht invoert, neemt u de parameter PassThru op wanneer u de Set-Location opdracht invoert:

Set-Location -Path C:\Windows -PassThru
Path
----
C:\WINDOWS

De PassThru-parameter kan worden gebruikt met veel setopdrachten in PowerShell om informatie te retourneren over het resultaat voor gevallen waarin er geen standaarduitvoer is.

U kunt paden opgeven ten opzichte van uw huidige locatie op dezelfde manier als in de meeste UNIX- en Windows-opdrachtshells. In standaard notatie voor relatieve paden vertegenwoordigt een punt (.) uw huidige map en een dubbele punt (..) de bovenliggende map van uw huidige locatie.

Als u zich bijvoorbeeld in de C:\Windows map bevindt, vertegenwoordigt C:\Windows een punt (.) en dubbele perioden (..).C: U kunt van uw huidige locatie naar de hoofdmap van het C: station wijzigen door het volgende te typen:

Set-Location -Path .. -PassThru
Path
----
C:\

Dezelfde techniek werkt op PowerShell-stations die geen bestandssysteemstations zijn, zoals HKLM:. U kunt uw locatie instellen op de HKLM\Software sleutel in het register door het volgende te typen:

Set-Location -Path HKLM:\SOFTWARE -PassThru
Path
----
HKLM:\SOFTWARE

Vervolgens kunt u de maplocatie wijzigen in de bovenliggende map met behulp van een relatief pad:

Set-Location -Path .. -PassThru
Path
----
HKLM:\

U kunt Set-Location een van de ingebouwde PowerShell-aliassen typen of gebruiken voor Set-Location (cd, chdir, sl). Voorbeeld:

cd -Path C:\Windows
chdir -Path .. -PassThru
sl -Path HKLM:\SOFTWARE -PassThru

Recente locaties opslaan en intrekken (pushlocatie en pop-locatie)

Wanneer u locaties wijzigt, is het handig om bij te houden waar u bent geweest en om terug te keren naar uw vorige locatie. De Push-Location cmdlet in PowerShell maakt een geordende geschiedenis (een 'stack') van mappaden waar u bent geweest en u kunt teruggaan door de geschiedenis van mappaden met behulp van de Pop-Location cmdlet.

PowerShell begint bijvoorbeeld meestal in de basismap van de gebruiker.

Get-Location

Path
----
C:\Documents and Settings\PowerUser

Notitie

De woordstack heeft een speciale betekenis in veel programmeerinstellingen, waaronder .NET Framework. Net als bij een fysieke stapel items is het laatste item dat u op de stapel plaatst het eerste item dat u van de stapel kunt halen. Het toevoegen van een item aan een stack wordt ook wel 'pushen' genoemd naar de stack. Het ophalen van een item uit de stapel wordt ook wel 'popping' genoemd van het item uit de stapel.

Als u de huidige locatie naar de stack wilt pushen en vervolgens naar de map Lokaal Instellingen wilt gaan, typt u:

Push-Location -Path "Local Settings"

Vervolgens kunt u de lokale Instellingen locatie naar de stack pushen en naar de map Temp gaan door het volgende te typen:

Push-Location -Path Temp

U kunt controleren of u mappen hebt gewijzigd door de Get-Location opdracht in te voeren:

Get-Location
Path
----
C:\Documents and Settings\PowerUser\Local Settings\Temp

Vervolgens kunt u teruggaan naar de laatst bezochte map door de Pop-Location opdracht in te voeren en de wijziging te controleren door de Get-Location opdracht in te voeren:

Pop-Location
Get-Location
Path
----
C:\Documents and Settings\me\Local Settings

Net als bij de Set-Location cmdlet kunt u de parameter PassThru opnemen wanneer u de Pop-Location cmdlet invoert om de map weer te geven die u hebt ingevoerd:

Pop-Location -PassThru
Path
----
C:\Documents and Settings\PowerUser

U kunt ook de locatie-cmdlets gebruiken met netwerkpaden. Als u een server met de naam FS01 met een share met de naam Openbaar hebt, kunt u uw locatie wijzigen door te typen

Set-Location \\FS01\Public

or

Push-Location \\FS01\Public

U kunt de Push-Location en Set-Location opdrachten gebruiken om de locatie te wijzigen in een willekeurig beschikbaar station. Als u bijvoorbeeld een lokaal CD-ROM-station hebt met stationsletter D die een gegevens-cd bevat, kunt u de locatie wijzigen in het CD-station door de Set-Location D: opdracht in te voeren.

Als het station leeg is, wordt het volgende foutbericht weergegeven:

Set-Location D:
Set-Location : Cannot find path 'D:\' because it does not exist.

Wanneer u een opdrachtregelinterface gebruikt, is het niet handig om Bestandenverkenner te gebruiken om de beschikbare fysieke stations te onderzoeken. Bestandenverkenner zou u ook niet alle PowerShell-stations laten zien. PowerShell biedt een set opdrachten voor het bewerken van PowerShell-stations.