Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieses Beispiel gilt nur für Windows-Plattformen.
Ein PowerShell-Laufwerk ist ein Speicherort für Daten, auf den Sie wie auf ein Dateisystemlaufwerk in PowerShell zugreifen können. Die PowerShell-Anbieter erstellen einige Laufwerke für Sie, z. B. die Dateisystemlaufwerke (einschließlich C:
und D:
), die Registrierungslaufwerke (HKCU:
und HKLM:
) und das Zertifikatlaufwerk (Cert:
). Sie können auch eigene PowerShell-Laufwerke erstellen. Diese Laufwerke sind sehr nützlich, aber nur in PowerShell verfügbar. Sie können darauf nicht mit anderen Windows-Tools wie Datei-Explorer oder Cmd.exe
zugreifen.
PowerShell verwendet das Substantiv PSDrive für Befehle, die mit PowerShell-Laufwerken arbeiten. Verwenden Sie zum Anzeigen einer Liste der PowerShell-Laufwerke in Ihrer PowerShell-Sitzung das Cmdlet Get-PSDrive
.
Get-PSDrive
Name Provider Root CurrentLocation
---- -------- ---- ---------------
A FileSystem A:\
Alias Alias
C FileSystem C:\ ...And Settings\me
cert Certificate \
D FileSystem D:\
Env Environment
Function Function
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Variable Variable
Die anzeigten Laufwerke hängen von den in Ihrem System vorhandenen Laufwerken ab. Ihre Anzeige sollte jedoch ähnlich wie die oben dargestellte Ausgabe des Befehls Get-PSDrive
aussehen.
Dateisystemlaufwerke sind eine Teilmenge der PowerShell-Laufwerke. Sie erkennen die Dateisystemlaufwerke am Eintrag „FileSystem“ in der Spalte „Provider“. Die Dateisystemlaufwerke in PowerShell werden vom PowerShell-Anbieter FileSystem unterstützt.
Um die Syntax des Cmdlets Get-PSDrive
anzuzeigen, geben Sie den Befehl Get-Command
mit dem Parameter Syntax ein:
Get-Command -Name Get-PSDrive -Syntax
Get-PSDrive [[-Name] <String[]>] [-Scope <String>] [-PSProvider <String[]>] [-V
erbose] [-Debug] [-ErrorAction <ActionPreference>] [-ErrorVariable <String>] [-
OutVariable <String>] [-OutBuffer <Int32>]
Mit dem PSProvider-Parameter können Sie nur die PowerShell-Laufwerke anzeigen lassen, die von einem bestimmten Anbieter unterstützt werden. Um beispielsweise nur die PowerShell-Laufwerke anzuzeigen, die vom PowerShell-Anbieter FileSystem unterstützt werden, geben Sie den Befehl Get-PSDrive
mit dem PSProvider-Parameter und dem Wert FileSystem ein:
Get-PSDrive -PSProvider FileSystem
Name Provider Root CurrentLocation
---- -------- ---- ---------------
A FileSystem A:\
C FileSystem C:\ ...nd Settings\PowerUser
D FileSystem D:\
Um die PowerShell-Laufwerke anzuzeigen, die Registrierungsstrukturen darstellen, verwenden Sie den PSProvider-Parameter, damit nur die PowerShell-Laufwerke angezeigt werden, die vom PowerShell-Anbieter Registry unterstützt werden:
Get-PSDrive -PSProvider Registry
Name Provider Root CurrentLocation
---- -------- ---- ---------------
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Sie können auch die standardmäßigen Location-Cmdlets mit den PowerShell-Laufwerken verwenden:
Set-Location HKLM:\SOFTWARE
Push-Location .\Microsoft
Get-Location
Path
----
HKLM:\SOFTWARE\Microsoft
Hinzufügen neuer PowerShell-Laufwerke
Mit dem Befehl New-PSDrive
können Sie eigene PowerShell-Laufwerke hinzufügen. Um die Syntax des Befehls New-PSDrive
abzurufen, geben Sie den Befehl Get-Command
mit dem Parameter Syntax ein:
Get-Command -Name New-PSDrive -Syntax
New-[-Description <String>] [-Scope <String>] [-Credential <PSCredential>] [-Verbose] [-Debug ]
[-ErrorAction <ActionPreference>] [-ErrorVariable <String>] [-OutVariable <St ring>]
[-OutBuffer <Int32>] [-WhatIf] [-Confirm]
Um ein neues PowerShell-Laufwerk zu erstellen, müssen Sie drei Parameter angeben:
- Einen Namen für das Laufwerk (Sie können einen beliebigen gültigen PowerShell-Namen verwenden)
- Den PSProvider: Verwenden Sie
FileSystem
für Dateisystemspeicherorte undRegistry
für Registrierungsspeicherorte. - Das Stammelement, d.h. den Pfad zum Stamm des neuen Laufwerks
Sie können beispielsweise ein Laufwerk namens Office
erstellen, das dem Ordner zugeordnet ist, der die Microsoft Office-Anwendungen auf Ihrem Computer enthält, z. B. C:\Program Files\MicrosoftOffice\OFFICE11
.
Geben Sie zum Erstellen des Laufwerks den folgenden Befehl ein:
New-PSDrive -Name Office -PSProvider FileSystem -Root "C:\Program Files\Microsoft Office\OFFICE11"
Name Provider Root CurrentLocation
---- -------- ---- ---------------
Office FileSystem C:\Program Files\Microsoft Offic...
Hinweis
Bei Pfaden wird im Allgemeinen die Groß-/Kleinschreibung nicht beachtet.
Auf ein PowerShell-Laufwerk wird über seinen Namen gefolgt von einem Doppelpunkt (:
) zugegriffen.
Ein PowerShell-Laufwerk kann viele Aufgaben einfacher machen. Beispielsweise haben einige der wichtigsten Schlüssel in der Windows-Registrierung äußerst lange Pfade, die den Zugriff darauf mühsam machen und schwer zu merken sind. Wichtige Konfigurationsinformationen befinden sich unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
. Zum Anzeigen und Ändern von Elementen im Registrierungsschlüssel „CurrentVersion“ können Sie ein PowerShell-Laufwerk mit dem Stamm in diesem Schlüssel erstellen, indem Sie Folgendes eingeben:
New-PSDrive -Name cvkey -PSProvider Registry -Root HKLM\Software\Microsoft\Windows\CurrentVersion
Name Provider Root CurrentLocation
---- -------- ---- ---------------
cvkey Registry HKLM\Software\Microsoft\Windows\...
Sie können dann zum Laufwerk cvkey: auf dieselbe Weise wechseln, wie Sie zu jedem anderen Laufwerk wechseln:
cd cvkey:
oder:
Set-Location cvkey: -PassThru
Path
----
cvkey:\
Das Cmdlet New-PSDrive
fügt das neue Laufwerk nur während der aktuellen PowerShell-Sitzung hinzu. Wenn Sie das PowerShell-Fenster schließen, geht das neue Laufwerk verloren. Wenn Sie ein PowerShell-Laufwerk speichern möchten, verwenden Sie das Cmdlet Export-Console
, um die aktuelle PowerShell-Sitzung zu exportieren, und dann den PSConsoleFile-Parameter von PowerShell.exe
, um sie zu importieren. Sie können auch das neue Laufwerk Ihrem Windows PowerShell-Profil hinzufügen.
Löschen von PowerShell-Laufwerken
Über das Cmdlet Remove-PSDrive
können Sie Laufwerke aus PowerShell löschen. Wenn Sie beispielsweise das PowerShell-Laufwerk Office:
hinzugefügt haben, wie im Thema New-PSDrive
gezeigt, können Sie es löschen, indem Sie Folgendes eingeben:
Remove-PSDrive -Name Office
Verwenden Sie den folgenden Befehl, um das PowerShell-Laufwerk cvkey:
zu löschen:
Remove-PSDrive -Name cvkey
Sie können es jedoch nur löschen, wenn Sie sich nicht auf dem Laufwerk befinden. Beispiel:
cd office:
Remove-PSDrive -Name office
Remove-PSDrive : Cannot remove drive 'Office' because it is in use.
At line:1 char:15
+ remove-psdrive <<<< -name office
Hinzufügen und Entfernen von Laufwerken außerhalb von PowerShell
PowerShell erkennt Dateisystemlaufwerke, die in Windows hinzugefügt oder entfernt werden, einschließlich:
- Zugeordnete Netzlaufwerke
- Angeschlossene USB-Laufwerke
- Laufwerke, die mithilfe des Befehls
net use
oder aus einem WSH-Skript (Windows Script Host) gelöscht wurden