Huidige locatie beheren

Wanneer u door mapsystemen in Verkenner 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, wanneer u zich in dezelfde map als een bepaald bestand begeeft, toegang krijgen 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.

Windows PowerShell maakt gebruik van het zelfstandige naamwoord Locatie om naar de werkmap te verwijzen en implementeert een familie van cmdlets om uw locatie te onderzoeken en te bewerken.

Uw huidige locatie op te halen (Get-Location)

Voer de opdracht in om het pad van uw huidige maplocatie te Get-Location 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 (setlocatie)

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

Set-Location -Path C:\Windows

Nadat u de opdracht hebt invoeren, ziet u dat u geen directe feedback ontvangt over het effect van de opdracht. De Windows 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 directorywijziging is opgetreden bij het invoeren van de opdracht, moet u de Set-Location parameter -PassThru opnemen wanneer u de opdracht Set-Location ingeeft:

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

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

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

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

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

Dezelfde techniek werkt op Windows 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, die de hoofdmap is van het Windows PowerShell HKLM:-station, met behulp van een relatief pad:

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

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

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

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

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

Een voorbeeld: Windows PowerShell wordt doorgaans gestart 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 stack met items is het laatste item dat u op de stack zet, het eerste item dat u uit de stack kunt halen. Het toevoegen van een item aan een stack staat ook wel bekend als het 'pushen' van het item naar de stack. Het binnenhalen van een item uit de stack staat ook wel bekend als 'het item uit de stack halen'.

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

Push-Location -Path "Local Settings"

U kunt vervolgens de lokale Instellingen naar de stack pushen en naar de map Temp gaan door het volgende te typen:

Push-Location -Path Temp

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

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

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

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

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

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

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

Set-Location \\FS01\Public

of

Push-Location \\FS01\Public

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

Als het station leeg is, krijgt u het volgende foutbericht:

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

Wanneer u een opdrachtregelinterface gebruikt, is het niet handig om Verkenner te gebruiken om de beschikbare fysieke stations te onderzoeken. Ook worden in Verkenner niet alle Windows PowerShell weergegeven. Windows PowerShell bevat een set opdrachten voor het bewerken van Windows PowerShell stations. Deze zullen we hierna bespreken.