Ruft Informationen über den aktuellen Arbeitsspeicherort ab.
Syntax
Get-Location [-PSDrive <string[]>] [-PSProvider <string[]>] [-UseTransaction] [<CommonParameters>] Get-Location [-Stack] [-StackName <string[]>] [-UseTransaction] [<CommonParameters>]
Beschreibung
Das Cmdlet "Get-Location" ruft ein Objekt ab, das das aktuelle Verzeichnis darstellt, vergleichbar mit dem Befehl "pwd" (print working directory).
Wenn Sie zwischen Windows PowerShell-Laufwerken wechseln, behält Windows PowerShell den Speicherort bei jedem Laufwerk bei. Sie können den Speicherort auf jedem Laufwerk mit Get-Location suchen.
Mit Get-Location können Sie auch das aktuelle Verzeichnis zur Laufzeit abrufen und in Funktionen und Skripts verwenden, z. B. in einer Funktion, die das aktuelle Verzeichnis in der Windows PowerShell-Eingabeaufforderung anzeigt.
Wenn Sie das Cmdlet "Push-Location" verwenden, um einem Pfadstapel Speicherorte hinzuzufügen, können Sie den aktuellen Stapel mit dem Stack-Parameter von Get-Location anzeigen.
Parameter
-PSDrive <string[]>
Ruft den aktuellen Speicherort auf dem angegebenen Windows PowerShell-Laufwerk ab.
Wenn Sie sich z. B. auf dem Laufwerk "Certificate:" befinden, können Sie mit diesem Parameter den aktuellen Speicherort auf dem Laufwerk "C:" suchen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByPropertyName) |
Platzhalterzeichen akzeptieren? |
false |
-PSProvider <string[]>
Ruft den aktuellen Speicherort auf dem Laufwerk ab, das vom angegebenen Windows PowerShell-Anbieter unterstützt wird.
Wenn der angegebene Anbieter mehr als ein Laufwerk unterstützt, gibt Get-Location den Speicherort auf dem Laufwerk zurück, auf das zuletzt zugegriffen wurde.
Wenn Sie sich z. B. auf Laufwerk "C:" befinden, können Sie mit diesem Parameter den aktuellen Speicherort auf den Laufwerken des Windows PowerShell-Registry-Anbieters suchen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByPropertyName) |
Platzhalterzeichen akzeptieren? |
false |
-Stack
Zeigt die Speicherorte im Standardpfadstapel an.
Verwenden Sie das Cmdlet "Push-Location", um dem Standardstapel Pfade hinzuzufügen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-StackName <string[]>
Zeigt die Speicherorte in den angegebenen Pfadstapeln an.
Verwenden Sie zum Erstellen von Pfadstapeln das Cmdlet "Push-Location".
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByPropertyName) |
Platzhalterzeichen akzeptieren? |
false |
-UseTransaction
Schließt den Befehl in die aktive Transaktion ein. Dieser Parameter ist nur gültig, wenn eine Transaktion ausgeführt wird. Weitere Informationen finden Sie unter "about_Transactions".
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
<CommonParameters>
Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.
Eingaben und Ausgaben
Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.
Eingaben |
None Eingaben können nicht über die Pipeline an dieses Cmdlet übergeben werden. |
Ausgaben |
PathInfo-Objekte oder StackInfo-Objekte Wenn Sie den Stack-Parameter oder den StackName-Parameter verwenden, gibt Get-Location ein StackInfo-Objekt zurück. Andernfalls wird ein PathInfo-Objekt zurückgegeben. |
Hinweise
Speicherorte können in einem Stapel gespeichert werden. Mit dem Cmdlet "Push-Location" wird ein Speicherort an oberster Stelle im Stapel hinzugefügt. Das Cmdlet "Pop-Location" ruft den Speicherort an oberster Stelle im Stapel ab.
Das Zusammenwirken der Parameter "PSProvider", "PSDrive", "Stack" und "StackName" hängt vom Anbieter ab. Bestimmte Kombinationen führen zu Fehlern, beispielsweise wenn ein Laufwerk zusammen mit einem Anbieter angegeben wird, der das betreffende Laufwerk nicht verfügbar macht. Wenn keine Parameter angegeben werden, wird von Get-Location das PathInfo-Objekt für den Anbieter zurückgegeben, der den aktuellen Arbeitsspeicherort enthält.
Das Cmdlet "Get-Location" ist für die Verwendung mit Daten konzipiert, die von beliebigen Anbietern verfügbar gemacht werden. Um die in der Sitzung verfügbaren Anbieter aufzuführen, geben Sie "Get-PSProvider" ein. Weitere Informationen finden Sie unter "about_Providers".
Beispiel 1
C:\PS>get-location Path ---- C:\WINDOWS Beschreibung ----------- Dieser Befehl zeigt den Speicherort auf dem aktuellen Windows PowerShell-Laufwerk an. Wenn Sie sich z. B. im Windows-Verzeichnis von Laufwerk "C:" befinden, wird der Pfad zu diesem Verzeichnis angezeigt.
Beispiel 2
C:\PS>set-location Beschreibung ----------- Diese Befehle veranschaulichen die Verwendung von Get-Location, um den aktuellen Speicherort auf unterschiedlichen Windows PowerShell-Laufwerken anzuzeigen. Der erste Befehl verwendet das Cmdlet "Set-Location", um den aktuellen Speicherort auf das Windows-Unterverzeichnis von Laufwerk "C:" festzulegen. C:\PS> set-location C:\Windows Der zweite Befehl ändert mit dem Cmdlet "Set-Location" den Speicherort in den Registrierungsschlüssel "HKLM:\Software\Microsoft". Wenn Sie zu einem Speicherort auf dem Laufwerk "HKLM:" wechseln, behält Windows PowerShell den Speicherort auf Laufwerk "C:" bei. PS C:\WINDOWS> set-location HKLM:\Software\Microsoft PS HKLM:\Software\Microsoft> Der dritte Befehl ändert mit dem Cmdlet "Set-Location" den Speicherort in den Registrierungsschlüssel "HKCU:\Control Panel\Input Method". PS HKLM:\Software\Microsoft> set-location 'HKCU:\Control Panel\Input Method' PS HKCU:\Control Panel\Input Method> Bei dem vierten Befehl wird mit dem Cmdlet "Get-Location" der aktuelle Speicherort auf dem Laufwerk "C:" gesucht. Das Laufwerk wird mit dem PSDrive-Parameter angegeben. PS HKCU:\Control Panel\Input Method> get-location -psdrive c Path ---- C:\WINDOWS Der fünfte Befehl verwendet das Cmdlet "Set-Location", um zum Laufwerk "C:" zurückzukehren. Obwohl der Befehl kein Unterverzeichnis angibt, können Sie in Windows PowerShell an den gespeicherten Speicherort zurückwechseln. PS HKCU:\Control Panel\Input Method> set-location C: PS C:\WINDOWS> Der sechste Befehl sucht mit dem Cmdlet "Get-Location" den aktuellen Speicherort auf den vom Windows PowerShell-Registrierungsanbieter unterstützten Laufwerken. Get-Location gibt den Speicherort des Registrierungslaufwerks zurück, auf das zuletzt zugegriffen wurde ("HKCU:"). PS C:\WINDOWS> get-location -psprovider registry Path ---- HKCU:\Control Panel\Input Method Zum Anzeigen des aktuellen Speicherorts auf dem Laufwerk "HKLM:" müssen Sie mit dem PSDrive-Parameter das Laufwerk angeben. Dies wird durch den siebten Befehl ausgeführt: PS C:\WINDOWS> get-location -psdrive HKLM Path ---- HKLM:\Software\Microsoft
Beispiel 3
C:\PS>set-location Beschreibung ----------- Diese Befehle veranschaulichen, wie mit dem Stack-Parameter und dem StackName-Parameter von Get-Location die Pfade im Standardpfadstapel und im alternativen Pfadstapel aufgeführt werden. Der erste Befehl legt den aktuellen Speicherort auf das Windows-Verzeichnis auf Laufwerk "C:" fest. C:\PS> set-location C:\Windows Der zweite Befehl verschiebt mit dem Cmdlet "Push-Location" den aktuellen Speicherort ("C:\Windows") auf den Pfadstapel und wechselt zum Unterverzeichnis "System32". Da kein Stapel angegeben wurde, wird der aktuelle Speicherort auf den Standardstapel verschoben. C:\WINDOWS>push-location System32 Der dritte Befehl verschiebt den aktuellen Speicherort ("C:\Windows\System32") auf den Stapel "Stack2" und ändert den Speicherort in das WindowsPowerShell-Unterverzeichnis. C:\Windows\System32>push-location WindowsPowerShell -stack Stack2 Der vierte Befehl ruft mit dem Cmdlet "Get-Location" die Pfade auf dem Standardpfadstapel ab. C:\WINDOWS\system32\WindowsPowerShell>get-location -stack Path ---- C:\WINDOWS Der letzte Befehl ruft mit dem StackName-Parameter von Get-Location die Pfade auf dem Stapel "Stack2" ab. C:\WINDOWS\system32\WindowsPowerShell>get-location -stackname Stack2 Path ---- C:\WINDOWS\system32
Beispiel 4
C:\PS>function prompt { 'PowerShell: ' + (get-location) + '> '} PowerShell: C:\WINDOWS> Beschreibung ----------- In diesem Beispiel wird gezeigt, wie die Windows PowerShell-Eingabeaufforderung angepasst wird. Die Funktion, die die Eingabeaufforderung definiert, enthält den Befehl "Get-Location", der jedes Mal ausgeführt wird, wenn die Eingabeaufforderung in der Konsole angezeigt wird. Das Format der Windows PowerShell-Standardeingabeaufforderung wird von einer speziellen Funktion mit dem Namen "prompt" definiert. Sie können die Eingabeaufforderung in der Konsole ändern, indem Sie eine neue Funktion mit dem Namen "prompt" erstellen. Zum Anzeigen der aktuellen prompt-Funktion geben Sie folgenden Befehl ein: get-content function:prompt Der Befehl beginnt mit dem Schlüsselwort "function", gefolgt vom Funktionsnamen "prompt". Der Funktionstext wird in geschweiften Klammern ({}) angezeigt. Dieser Befehl definiert eine neue Eingabeaufforderung, die mit der Zeichenfolge "PowerShell:" beginnt. Zum Anfügen des aktuellen Speicherorts wird der Befehl "Get-Location" verwendet, der beim Aufrufen der prompt-Funktion ausgeführt wird. Die Eingabeaufforderung endet mit der Zeichenfolge "> ".
Siehe auch