Delen via


New-PSDrive

Hiermee maakt u tijdelijke en permanente toegewezen netwerkstations.

Syntaxis

New-PSDrive
   [-Name] <String>
   [-PSProvider] <String>
   [-Root] <String>
   [-Description <String>]
   [-Scope <String>]
   [-Persist]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]

Description

De New-PSDrive cmdlet maakt tijdelijke en permanente stations die zijn toegewezen aan of gekoppeld aan een locatie in een gegevensarchief, zoals een netwerkstation, een map op de lokale computer of een registersleutel, en permanente Windows toegewezen netwerkstations die zijn gekoppeld aan een bestandssysteemlocatie op een externe computer.

Tijdelijke stations bestaan alleen in de huidige PowerShell-sessie en in sessies die u in de huidige sessie maakt. Ze kunnen elke naam hebben die geldig is in PowerShell en kan worden toegewezen aan elke lokale of externe resource. U kunt tijdelijke PowerShell-stations gebruiken om toegang te krijgen tot gegevens in het bijbehorende gegevensarchief, net zoals bij elk toegewezen netwerkstation. U kunt locaties wijzigen in het station met behulp van Set-Location, cd-of chdir-, en de inhoud van het station openen met behulp van Get-Item, Get-ChildItemof dir.

Omdat tijdelijke stations echter alleen bekend zijn bij PowerShell, kunt u deze niet openen met behulp van Verkenner, Windows Management Instrumentation (WMI), Component Object Model (COM) of microsoft .NET Framework, of met behulp van hulpprogramma's zoals Net Use.

De volgende functies worden toegevoegd aan New-PSDrive in Windows PowerShell 3.0:

  • Toegewezen netwerkstations. U kunt de parameter Persistent van gebruiken om toegewezen Windows-netwerkstations te maken. In tegenstelling tot tijdelijke PowerShell-stations zijn toegewezen Windows-netwerkstations niet sessiespecifiek. Ze worden opgeslagen in Windows en kunnen worden beheerd met behulp van standaard Windows-hulpprogramma's, zoals Verkenner en Net Use. Toegewezen netwerkstations moeten een stationsletternaam hebben en verbonden zijn met een externe bestandssysteemlocatie. Wanneer uw opdracht lokaal is gericht (geen puntbronnen), blijft de parameter Persistent het maken van een PSDrive- niet behouden buiten het bereik waarin de opdracht wordt uitgevoerd. Als u New-PSDrive uitvoert in een script en u wilt dat het station voor onbepaalde tijd behouden blijft, moet u de puntbron van het script. Als u wilt dat een nieuw station voor onbepaalde tijd behouden blijft, voegt u de parameter Bereik toe aan uw opdracht en stelt u de waarde ervan in op Globaal.
  • Externe stations. Wanneer een extern station is verbonden met de computer, voegt PowerShell automatisch een PSDrive- toe aan het bestandssysteem dat het nieuwe station vertegenwoordigt. U hoeft PowerShell niet opnieuw op te starten. Als een extern station is losgekoppeld van de computer, verwijdert PowerShell automatisch de PSDrive- die het verwijderde station vertegenwoordigt.
  • Referenties voor UNC-paden.

Wanneer de waarde van de parameter Root een UNC-pad is, zoals \\Server\Share, wordt de referentie die is opgegeven in de waarde van de parameter Credential gebruikt om de PSDrive-te maken. Anders is Referentie niet effectief wanneer u nieuwe bestandssysteemstations maakt.

Voorbeelden

Voorbeeld 1: Een station maken dat is toegewezen aan een netwerkshare

New-PSDrive -Name "P" -PSProvider "FileSystem" -Root "\\Server01\Public"

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

Met deze opdracht maakt u een tijdelijk PowerShell-station met de naam P: dat is toegewezen aan de share \\Server01\Public Network.

Hierbij wordt de parameter Name gebruikt om een naam op te geven voor het station, de parameter PSProvider om de PowerShell FileSystem-provider op te geven en de parameter Root om de netwerkshare op te geven.

Wanneer de opdracht is voltooid, wordt de inhoud van de share \\Server01\Public weergegeven in het station P: . Als u ze wilt zien, typt u: dir P:.

Voorbeeld 2: Een tijdelijk station maken

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

Met deze opdracht maakt u een tijdelijk PowerShell-station dat snelle toegang biedt tot een lokale map. Er wordt een station gemaakt met de naam MyDocs: dat is toegewezen aan de map C:\Documents and Settings\User01\My Documents op de lokale computer.

Er wordt Name gebruikt om een naam op te geven voor het station, PSProvider om de PowerShell FileSystem-provider, Root- op te geven om het pad van de map Mijn documenten op te geven en de parameter Description om een beschrijving van het station te maken.

Wanneer de opdracht is voltooid, wordt de inhoud van de map Mijn documenten weergegeven in het station MyDocs:. Als u ze wilt zien, typt u: dir MyDocs:.

Voorbeeld 3: Een station voor een registersleutel maken

New-PSDrive -Name "MyCompany" -PSProvider "Registry" -Root "HKLM:\Software\MyCompany"

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

Met deze opdracht maakt u een tijdelijk PowerShell-station dat snelle toegang biedt tot een regelmatig gecontroleerde registersleutel. Er wordt een station gemaakt met de naam MyCompany dat is toegewezen aan de registersleutel HKLM\Software\MyCompany.

Er wordt Name gebruikt om een naam op te geven voor het station, PSProvider- om de PowerShell-registerprovider op te geven en root- om de registersleutel op te geven.

Wanneer de opdracht is voltooid, wordt de inhoud van de MyCompany-sleutel weergegeven in het MyCompany: station. Als u ze wilt zien, typt u: dir MyCompany:.

Voorbeeld 4: Een persistent toegewezen netwerkstation maken

New-PSDrive -Name "S" -Root "\\Server01\Scripts" -Persist -PSProvider "FileSystem"
Net Use

Status       Local     Remote                    Network
---------------------------------------------------------
OK           S:        \\Server01\Scripts        Microsoft Windows Network

Met deze opdracht maakt u het toegewezen netwerkstation 'S' op de lokale computer. Het S-station is toegewezen aan de netwerkshare \\Server01\Scripts.

De opdracht gebruikt New-PSDrive om het toegewezen netwerkstation te maken. Het maakt gebruik van Persistent om een toegewezen Windows-netwerkstation te maken dat is opgeslagen op de lokale computer.

De opdracht maakt gebruik van Name om een letternaam op te geven die door Windows wordt geaccepteerd en Root- om een locatie op te geven op een externe computer. Er wordt PSProvider gebruikt om de bestandssysteemprovider op te geven.

Het resulterende station kan worden weergegeven in andere PowerShell-sessies op de lokale computer, in Windows Verkenner en in andere hulpprogramma's, zoals Net Use.

Voorbeeld 5: Permanente en tijdelijke stations maken

# Create a temporary PowerShell drive called PSDrive: that is mapped to the \\Server01\Public network share.
New-PSDrive -Name "PSDrive" -PSProvider "FileSystem" -Root "\\Server01\Public"
# Use the *Persist* parameter of **New-PSDrive** to create the X: mapped network drive, which is also mapped to the \\Server01\Public network share.
New-PSDrive -Persist -Name "X" -PSProvider "FileSystem" -Root "\\Server01\Public"
# Now, you can use the **Get-PSDrive** drive cmdlet to examine the two drives. The drives appear to be the same, although the network share name appears only in the root of the PSDrive: drive.
Get-PSDrive -Name "PSDrive", "X"

Name       Provider      Root
----       --------      ----

PsDrive    FileSystem    \\Server01\public
X          FileSystem    X:\

# Get-Member cmdlet shows that the drives have the same object type, System.Management.Automation.PSDriveInfo.
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()
...

# Net Use and Get-WmiObject for the Win32_LogicalDisk class, and Win32_NetworkConnection class find only the persistent X: drive.
# PowerShell temporary drives are known only to PowerShell.
Net Use
Get-WmiObject Win32_LogicalDisk | Format-Table -Property DeviceID
Get-WmiObject Win32_NetworkConnection

Status       Local     Remote                    Network
--------------------------------------------------------
OK           X:        \\contoso-pc\data            Microsoft Windows Network

deviceid
--------
C:
D:
X:

LocalName                  RemoteName                 ConnectionState            Status
---------                  ----------              ---------------               ------
X:                         \\products\public          Disconnected               Unavailable

In dit voorbeeld ziet u het verschil tussen een permanent toegewezen netwerkstation en een tijdelijk PowerShell-station dat is toegewezen aan dezelfde netwerkshare.

Als u de PowerShell-sessie sluit en vervolgens een nieuwe opent, is het PSDrive-station verdwenen en blijft het X: station behouden. Wanneer u besluit welke methode moet worden gebruikt om netwerkstations toe te wijzen, moet u overwegen hoe u het station gebruikt, of het permanent moet zijn en of het station zichtbaar moet zijn voor andere Windows-functies.

Parameters

-Confirm

U wordt gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Credential

Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. De standaardwaarde is de huidige gebruiker.

Typ een gebruikersnaam, zoals 'User01' of 'Domain01\User01', of voer een PSCredential--object in, zoals een object dat is gegenereerd door de Get-Credential-cmdlet. Als u een gebruikersnaam typt, wordt u door deze cmdlet gevraagd om een wachtwoord.

Vanaf Windows PowerShell 3.0 kunt u referenties gebruiken om bestandssysteemstations te maken wanneer de waarde van de parameter Root een UNC-pad is. Deze parameter wordt niet ondersteund door alle PowerShell-providers.

Type:PSCredential
Position:Named
Default value:Current user
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Description

Hiermee geeft u een korte tekstbeschrijving van het station. Typ een willekeurige tekenreeks.

Als u de beschrijvingen van alle stations in de sessie wilt zien, typt u Get-PSDrive | Format-Table Name, Description. Als u de beschrijving van een bepaalde stations wilt zien, typt u (Get-PSDrive \<DriveName\>).Description.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Name

Hiermee geeft u een naam voor het nieuwe station. Typ een stationsletter voor permanente toegewezen netwerkstations. Voor tijdelijke PowerShell-stations typt u een geldige tekenreeks; u bent niet beperkt tot stationsletters.

Type:String
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Persist

Geeft aan dat deze cmdlet een toegewezen Windows-netwerkstation maakt. Toegewezen netwerkstations worden opgeslagen in Windows op de lokale computer. Ze zijn permanent, niet sessiespecifiek en kunnen worden bekeken en beheerd in Verkenner en andere hulpprogramma's.

Wanneer u de opdracht lokaal bereikt, dat wil gezegd, houdt de parameter Persistent het maken van een PSDrive- buiten het bereik waarin u de opdracht uitvoert, niet behouden. Als u New-PSDrive uitvoert in een script en u wilt dat het nieuwe station voor onbepaalde tijd behouden blijft, moet u dot-source van het script. Als u wilt afdwingen dat een nieuw station behouden blijft, geeft u Globaal op als de waarde van de parameter Bereik naast het toevoegen van Persistent aan uw opdracht.

De naam van het station moet een letter zijn, zoals 'D' of 'E'. De waarde van root- parameter moet een UNC-pad van een andere computer zijn. De waarde van de parameter PSProvider moet bestandssysteem zijn.

Gebruik de cmdlet Remove-PSDrive om de verbinding met een toegewezen Windows-netwerkstation te verbreken. Wanneer u een toegewezen Windows-netwerkstation loskoppelt, wordt de toewijzing definitief van de computer verwijderd, niet alleen uit de huidige sessie.

Toegewezen netwerkstations zijn specifiek voor een gebruikersaccount. Toegewezen stations die zijn gemaakt in sessies met verhoogde bevoegdheid of sessies met behulp van de referenties van een andere gebruiker, zijn niet zichtbaar in sessies die zijn gestart met verschillende referenties.

Type:SwitchParameter
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-PSProvider

Hiermee geeft u de PowerShell-provider op die stations van dit type ondersteunt.

Als het station bijvoorbeeld is gekoppeld aan een netwerkshare of bestandssysteemmap, is de PowerShell-provider Bestandssysteem. Als het station is gekoppeld aan een registersleutel, is de provider Register.

Tijdelijke PowerShell-stations kunnen worden gekoppeld aan elke PowerShell-provider. Toegewezen netwerkstations kunnen alleen worden gekoppeld aan de bestandssysteemprovider.

Als u een lijst met de providers in uw PowerShell-sessie wilt zien, gebruikt u de cmdlet Get-PSProvider.

Type:String
Position:1
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Root

Hiermee geeft u de locatie van het gegevensarchief waaraan een PowerShell-station is toegewezen.

Geef bijvoorbeeld een netwerkshare op, zoals \\Server01\Public, een lokale map, zoals C:\Program Files of een registersleutel, zoals HKLM:\Software\Microsoft.

Tijdelijke PowerShell-stations kunnen worden gekoppeld aan een lokale of externe locatie op elk ondersteund providerstation. Toegewezen netwerkstations kunnen alleen worden gekoppeld aan een bestandssysteemlocatie op een externe computer.

Type:String
Position:2
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Scope

Hiermee geeft u een bereik voor het station. De acceptabele waarden voor deze parameter zijn: Globaal, Lokaal en Script, of een getal ten opzichte van het huidige bereik. Bereiken getal 0 tot en met het aantal bereiken. Het huidige bereiknummer is 0 en de bovenliggende waarde is 1. Zie about_Scopesvoor meer informatie.

Type:String
Position:Named
Default value:Local
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-UseTransaction

Bevat de opdracht in de actieve transactie. Deze parameter is alleen geldig wanneer een transactie wordt uitgevoerd. Zie about_Transactionsvoor meer informatie.

Type:SwitchParameter
Aliassen:usetx
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-WhatIf

Toont wat er zou gebeuren als de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

None

U kunt invoer voor deze cmdlet niet doorsluisen.

Uitvoerwaarden

PSDriveInfo

Notities

  • New-PSDrive is ontworpen om te werken met de gegevens die door elke provider worden weergegeven. Gebruik Get-PSProviderom de providers weer te geven die beschikbaar zijn in uw sessie. Zie about_Providersvoor meer informatie over providers.
  • Toegewezen netwerkstations zijn specifiek voor een gebruikersaccount. Toegewezen stations die zijn gemaakt in sessies met verhoogde bevoegdheid of sessies met behulp van de referenties van een andere gebruiker, zijn niet zichtbaar in sessies die zijn gestart met verschillende referenties.