Freigeben über


New-PSDrive

Erstellt in der aktuellen Sitzung ein Windows PowerShell-Laufwerk.

Syntax

New-PSDrive [-Name] <string> [-PSProvider] <string> [-Root] <string> [-Credential <PSCredential>] [-Beschreibung <string>] [-Scope <string>] [-Confirm] [-WhatIf] [-UseTransaction] [<CommonParameters>]

Beschreibung

Das Cmdlet "New-PSDrive" erstellt ein Windows PowerShell-Laufwerk, das einem Speicherort im Datenspeicher zugeordnet wird, z. B. einem Netzlaufwerk, einem Verzeichnis auf dem lokalen Computer oder einem Registrierungsschlüssel.

Sie können mit den erstellten Windows PowerShell-Laufwerken auf Daten im zugeordneten Datenspeicher zugreifen wie auf jedes andere zugeordnete Laufwerk. Sie können Speicherorte (mit "Set-Location", "cd" oder "chdir") in das Laufwerk ändern und (mit "Get-Item", "Get-ChildItem" oder "dir") auf den Inhalt des Laufwerks zugreifen.

Die Windows PowerShell-Laufwerke sind jedoch nur für Windows PowerShell verfügbar. Es ist nicht möglich, mit Windows-Explorer, der Windows-Verwaltungsinstrumentation (WMI), dem Component Object Model (COM) bzw. Microsoft .NET Framework oder mit Tools wie Net Use darauf zuzugreifen.

Windows PowerShell-Laufwerke sind nur in der aktuellen Windows PowerShell-Sitzung vorhanden. Um das Laufwerk dauerhaft verfügbar zu machen, können Sie die Sitzung, der Sie das Laufwerk hinzugefügt haben, exportieren oder den Befehl "New-PSDrive" im Windows PowerShell-Profil speichern.

Verwenden Sie das Cmdlet "Remove-PSDrive", um ein mit New-PSDrive erstelltes Laufwerk zu löschen.

Parameter

-Credential <PSCredential>

Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Der Standardwert ist der aktuelle Benutzer.

Geben Sie einen Benutzernamen ein, z. B. "User01" oder "Domain01\User01". Oder geben Sie ein PSCredential-Objekt ein, z. B. ein vom Cmdlet "Get-Credential" generiertes Objekt. Wenn Sie einen Benutzernamen eingeben, werden Sie zur Eingabe eines Kennworts aufgefordert.

Dieser Parameter wird nicht von mit Windows PowerShell installierten Anbietern unterstützt.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

true (ByPropertyName)

Platzhalterzeichen akzeptieren?

false

-Beschreibung <string>

Gibt eine kurze Textbeschreibung des Laufwerks an. Geben Sie eine beliebige Zeichenfolge ein.

Wenn Sie die Beschreibungen aller Windows PowerShell-Laufwerke auf dem System anzeigen möchten, geben Sie Folgendes ein: "Get-PSDrive | format name, description". Wenn Sie die Beschreibung eines bestimmten Windows PowerShell-Laufwerks anzeigen möchten, geben Sie Folgendes ein: "(get-psdrive <Laufwerkname>).description".

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

true (ByPropertyName)

Platzhalterzeichen akzeptieren?

false

-Name <string>

Gibt einen Namen für das neue Laufwerk an. Sie können eine beliebige gültige Zeichenfolge als Namen verwenden. Sie sind nicht auf Laufwerkbuchstaben beschränkt. Bei Laufwerknamen in Windows PowerShell wird die Groß-/Kleinschreibung beachtet.

Erforderlich?

true

Position?

1

Standardwert

Pipelineeingaben akzeptieren?

true (ByPropertyName)

Platzhalterzeichen akzeptieren?

false

-PSProvider <string>

Gibt den Windows PowerShell-Anbieter an, der Laufwerke dieses Typs unterstützt.

Wenn die Windows PowerShell-Laufwerke z. B. einer Netzwerkfreigabe oder einem Dateisystemverzeichnis zugeordnet werden, lautet der Windows PowerShell-Anbieter "FileSystem". Wenn das Windows PowerShell-Laufwerk einem Registrierungsschlüssel zugeordnet wird, lautet der Anbieter "Registry".

Geben Sie "Get-PSProvider" ein, um eine Liste der Anbieter in der Windows PowerShell-Sitzung anzuzeigen.

Erforderlich?

true

Position?

2

Standardwert

Pipelineeingaben akzeptieren?

true (ByPropertyName)

Platzhalterzeichen akzeptieren?

false

-Root <string>

Gibt den Speicherort im Datenspeicher an, dem das Windows PowerShell-Laufwerk zugeordnet ist.

Geben Sie z. B. eine Netzwerkfreigabe (wie "\\Server01\Public"), ein lokales Verzeichnis (wie "C:\Programme") oder einen Registrierungsschlüssel an (wie "HKLM:\Software\Microsoft").

Erforderlich?

true

Position?

3

Standardwert

Pipelineeingaben akzeptieren?

true (ByPropertyName)

Platzhalterzeichen akzeptieren?

false

-Scope <string>

Gibt einen Bereich für das Laufwerk an. Gültige Werte sind "global", "local", "script", oder eine Zahl in Bezug auf den aktuellen Bereich (0 bis zur Anzahl der Bereiche, wobei 0 der aktuelle Bereich und 1 der übergeordnete Bereich ist). Der Standardwert ist "local". Weitere Informationen finden Sie unter "about_Scopes".

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

true (ByPropertyName)

Platzhalterzeichen akzeptieren?

false

-Confirm

Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-WhatIf

Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

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

Keiner

Eingaben können nicht über die Pipeline an dieses Cmdlet übergeben werden.

Ausgaben

System.Management.Automation.PSDriveInfo

Hinweise

Das Cmdlet "New-PSDrive" 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>new-psdrive -name P -psprovider FileSystem -root \\Server01\Public

Name       Provider      Root
----       --------      ----
P          FileSystem    \\Server01\Public

Beschreibung
-----------
Mit diesem Befehl wird ein Windows PowerShell-Laufwerk erstellt, dessen Funktionen den Funktionen eines zugeordneten Netzlaufwerks in Windows entsprechen. Der Befehl erstellt das Windows PowerShell-Laufwerk "P:", das der Netzwerkfreigabe "\\Server01\Public" zugeordnet wird. 

Dabei wird mit dem Name-Parameter ein Name für das Laufwerk, mit dem PSProvider-Parameter der Windows PowerShell-FileSystem-Anbieter und mit dem Root-Parameter die Netzwerkfreigabe angegeben.

Nach Abschluss des Befehls wird der Inhalt der Freigabe "\\Server01\Public" auf dem Laufwerk "P:" angezeigt. Geben Sie zum Anzeigen "dir p:" ein.





Beispiel 2

C:\PS>new-psdrive -name MyDocs -psprovider FileSystem -root "C:\Documents and Settings\User01\My Documents" -Description "Maps to my My Documents folder."

Name       Provider      Root
----       --------      ----
MyDocs     FileSystem    C:\Documents and Settings\User01\My Documents

Beschreibung
-----------
Mit diesem Befehl wird ein Windows PowerShell-Laufwerk erstellt, das schnellen Zugriff auf ein lokales Verzeichnis ermöglicht. Es wird ein Laufwerk mit dem Namen "MyDocs:" erstellt, das dem 
Verzeichnis "C:\Documents und Settings\User01\My Documents" auf dem lokalen Computer zugeordnet wird.

Mit dem Name-Parameter wird ein Name für das Laufwerk angegeben, mit dem PSProvider-Parameter wird der Windows PowerShell-FileSystem-Anbieter angegeben, und mit dem Root-Parameter wird der Pfad zum Ordner "Eigene Dateien" angegeben. Mit dem Description-Parameter wird eine Beschreibung des Laufwerks erstellt.


Nach Abschluss des Befehls wird der Inhalt des Ordners "My Documents" auf dem Laufwerk "MyDocs:" angezeigt. Geben Sie zum Anzeigen "dir mydocs:" ein.





Beispiel 3

C:\PS>new-psdrive -name MyCompany -psprovider Registry -root HKLM:\Software\MyCompany

Name       Provider      Root
----       --------      ----
MyCompany  Registry      HKEY_LOCAL_MACHINE\Software\MyCo...

Beschreibung
-----------
Mit diesem Befehl wird ein Windows PowerShell-Laufwerk erstellt, das schnellen Zugriff auf einen häufig überprüften Registrierungsschlüssel ermöglicht. Der Befehl erstellt das Laufwerk "MyCompany", das dem Registrierungsschlüssel "HKLM\Software\MyCompany" zugeordnet wird. 

Mit dem Name-Parameter wird ein Name für das Laufwerk angegeben, mit dem PSProvider-Parameter wird der Windows PowerShell-Registry-Anbieter angegeben, und mit dem Root-Parameter wird der Registrierungsschlüssel angegeben.


Nach Abschluss des Befehls wird der Inhalt des Schlüssels "MyCompany" auf dem Laufwerk "MyCompany" angezeigt. Geben Sie zum Anzeigen "dir MyCompany:" ein.





Beispiel 4

C:\PS>new-psdrive -name PsDrive -psprovider FileSystem -root \\Server01\Public

C:\PS> $drive = new-object -com wscript.network
C:\PS> $drive.MapNetworkDrive("X:", "\\Server01\Public")


C PS:\> get-psdrive public, x

Name       Provider      Root
----       --------      ----
PsDrive    FileSystem    \\Server01\public
X          FileSystem    X:\


C:\PS>get-psdrive psdrive, x | get-member

   TypeName: System.Management.Automation.PSDriveInfo
Name                MemberType Definition
----                ---------- ----------
CompareTo           Method     System.Int32 CompareTo(PSDriveInfo drive), 
Equals              Method     System.Boolean Equals(Object obj), 
GetHashCode         Method     System.Int32 GetHashCode()
...



C:\PS> net use
Status       Local     Remote                    Network
---------------------------------------------------------------------------
             X:        \\server01\public         Microsoft Windows Network


C:\PS> get-wmiobject win32_logicaldisk | ft deviceid
deviceid
--------
C:
D:
X:

C:\PS> get-wmiobject win32_networkconnection
LocalName                     RemoteName                    ConnectionState               Status
---------                     ----------                    ---------------               ------
X:                            \\products\public             Disconnected                  Unavailable

Beschreibung
-----------
In diesem Beispiel wird der Unterschied zwischen einem Windows-Laufwerk, das einer Netzwerkfreigabe zugeordnet ist, und einem Windows PowerShell-Laufwerk veranschaulicht, das der gleichen Netzwerkfreigabe zugeordnet ist.

Im ersten Befehl wird mit dem Cmdlet "New-PSDrive" das Windows PowerShell-Laufwerk "PSDrive:" erstellt, das der Netzwerkfreigabe "\\Server01\Public" zugeordnet wird.

Im zweiten Satz von Befehlen wird mit dem Cmdlet "New-Object" ein Wscript.Network-COM-Objekt erstellt. Danach wird mit der MapNetworkDrive-Methode die Netzwerkfreigabe "\\Server01\Public" dem Laufwerk "X:" auf dem lokalen Computer zugeordnet. 

Nun können die beiden Laufwerke betrachtet werden. Bei Verwendung des Laufwerkbefehls "Get-PSDrive" scheinen die beiden Laufwerke identisch zu sein, obwohl der Netzwerkfreigabename nur im Stamm des Laufwerks "PSDrive:" angezeigt wird.

Durch das Senden der Laufwerksobjekte an Get-Member wird gezeigt, dass sie den gleichen Objekttyp aufweisen: System.Management.Automation.PSDriveInfo.

Mit dem Befehl "net use", dem Befehl "Get-WmiObject" für die Win32_LogicalDisk-Klasse und dem Befehl "Get-WmiObject" für die Win32_NetworkConnection-Klasse wird jedoch nur das Laufwerk "X:" gefunden, das mithilfe des Wscript.Network-Objekts erstellt wurde. Das liegt daran, dass Windows PowerShell-Laufwerke nur für Windows PowerShell verfügbar sind.

Wenn Sie die Windows PowerShell-Sitzung schließen und dann eine neue Sitzung öffnen, wird das Laufwerk "PSDrive:" nicht mehr angezeigt, während Laufwerk "X:" weiterhin vorhanden ist.

Wenn Sie entscheiden, mit welcher Methode Netzlaufwerke zugeordnet werden sollen, berücksichtigen Sie daher, wie das Laufwerk verwendet werden soll, ob es beibehalten werden muss und ob das Laufwerk für andere Windows-Features sichtbar sein muss.





Siehe auch

Konzepte

about_Providers
Get-PSDrive
Remove-PSDrive