New-PSDrive

Ideiglenes és állandó meghajtókat hoz létre, amelyek egy elem adattárában lévő helyhez vannak társítva.

Syntax

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

Description

A New-PSDrive parancsmag ideiglenes és állandó meghajtókat hoz létre, amelyek egy adattár egy helyéhez vannak hozzárendelve vagy ahhoz társítva, például hálózati meghajtót, a helyi számítógépen található könyvtárat vagy egy beállításkulcsot, valamint egy távoli számítógépen található fájlrendszer-helyhez társított állandó Windows-megfeleltetett hálózati meghajtókat.

Az ideiglenes meghajtók csak az aktuális PowerShell-munkamenetben és az aktuális munkamenetben létrehozott munkamenetekben léteznek. Bármilyen, a PowerShellben érvényes névvel rendelkezhetnek, és bármely helyi vagy távoli erőforráshoz leképezhetők. Ideiglenes PowerShell-meghajtók használatával is hozzáférhet a társított adattár adataihoz, ugyanúgy, mint bármely leképezett hálózati meghajtó esetén. A meghajtó helyeit módosíthatja a meghajtó használatával Set-Location, és a meghajtó tartalmának a használatával Get-Item vagy Get-ChildItemhasználatával is elérheti.

Mivel az ideiglenes meghajtókat csak a PowerShell ismeri, nem érheti el őket a Fájlkezelő, a Windows Management Instrumentation (WMI), a komponensobjektum-modell (COM), a Microsoft .NET-keretrendszer vagy az olyan eszközök használatával, mint a net use.

A Következő funkciók lettek hozzáadva a New-PSDrive PowerShell 3.0-hoz:

  • Leképezett hálózati meghajtók. A Windows-megfeleltetett hálózati meghajtók létrehozásához használhatja New-PSDrive a Persist paramétert. Az ideiglenes PowerShell-meghajtókkal ellentétben a Windows-megfeleltetett hálózati meghajtók nem munkamenet-specifikusak. A Windowsban vannak mentve, és szabványos Windows-eszközökkel, például Fájlkezelő és net-használattal kezelhetők. A leképezett hálózati meghajtóknak meghajtóbetűjellel kell rendelkezniük, és távoli fájlrendszer-helyhez kell csatlakozniuk. Ha a parancs hatóköre helyileg van korlátozva, nincs dot-sourcing, a Persist paraméter nem tárolja a PSDrive létrehozását azon a hatókörön túl, amelyben a parancs fut. Ha parancsfájlon belül fut New-PSDrive , és azt szeretné, hogy a meghajtó határozatlan ideig megmaradjon, akkor pontforrásként kell használnia a szkriptet. A legjobb eredmény érdekében, ha egy új meghajtót határozatlan ideig meg szeretne őrizni, adja hozzá a Hatókör paramétert a parancshoz, és állítsa az értékét globálisra. További információ a dot-sourcingról: about_Scripts.
  • Külső meghajtók. Ha egy külső meghajtó csatlakozik a számítógéphez, a PowerShell automatikusan hozzáad egy PSDrive-ot az új meghajtót képviselő fájlrendszerhez. Nem kell újraindítania a PowerShellt. Hasonlóképpen, ha egy külső meghajtót leválasztanak a számítógépről, a PowerShell automatikusan törli az eltávolított meghajtót jelképező PSDrive-ot .
  • Hitelesítő adatok az univerzális elnevezési konvenció (UNC) elérési útjaihoz.

Ha a gyökérparaméter értéke UNC elérési út, például \\Server\Sharea hitelesítő adat paraméter értékében megadott hitelesítő adatot használja a PSDrive létrehozásához. Ellenkező esetben a hitelesítő adatok nem hatékonyak új fájlrendszer-meghajtók létrehozásakor.

Egyes kódminták splatting használatával csökkentik a vonal hosszát és javítják az olvashatóságot. További információ: about_Splatting.

Feljegyzés

Ha nem használja a Hatókör paramétert, a PSDrive-k abban a hatókörben jönnek létre, amelyben a New-PSDrive parancs fut.

Példák

1. példa: Hálózati megosztáshoz hozzárendelt ideiglenes meghajtó létrehozása

Ez a példa létrehoz egy ideiglenes PowerShell-meghajtót, amely egy hálózati megosztáshoz van leképezve.

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

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

New-PSDriveA Név paraméter használatával adja meg az elnevezett Public PowerShell-meghajtót és a PSProvider paramétert a PowerShell-szolgáltató FileSystem megadásához. A gyökérparaméter megadja a hálózati megosztás UNC elérési útját.

A PowerShell-munkamenet tartalmainak megtekintése: Get-ChildItem -Path Public:

2. példa: Helyi könyvtárhoz hozzárendelt ideiglenes meghajtó létrehozása

Ez a példa létrehoz egy ideiglenes PowerShell-meghajtót, amely hozzáférést biztosít a helyi számítógépen található könyvtárhoz.

$parameters = @{
    Name = "MyDocs"
    PSProvider = "FileSystem"
    Root = "C:\Users\User01\Documents"
    Description = "Maps to my My Documents folder."
}
New-PSDrive @parameters

Name        Provider      Root
----        --------      ----
MyDocs      FileSystem    C:\Users\User01\Documents

A Splatting létrehozza a paraméterkulcsokat és -értékeket. A Név paraméter megadja a meghajtó nevét, a MyDocsot. A PSProvider paraméter a PowerShell-szolgáltatót FileSystem határozza meg. A gyökér megadja a helyi számítógép könyvtárát. A Leírás paraméter a meghajtó célját írja le. New-PSDrive A meghajtó létrehozásához MyDocs a kiszúrt paramétereket használja.

A PowerShell-munkamenet tartalmainak megtekintése: Get-ChildItem -Path MyDocs:

3. példa: Ideiglenes meghajtó létrehozása beállításkulcshoz

Ez a példa létrehoz egy ideiglenes PowerShell-meghajtót, amely hozzáférést biztosít egy beállításkulcshoz. Létrehoz egy MyCompany nevű meghajtót, amely a HKLM:\Software\MyCompany beállításkulcshoz van hozzárendelve.

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

Name           Provider      Root
----           --------      ----
MyCompany      Registry      HKLM:\Software\MyCompany

New-PSDriveA Név paraméter használatával adja meg az elnevezett MyCompany PowerShell-meghajtót és a PSProvider paramétert a PowerShell-szolgáltató Registry megadásához. A gyökérparaméter megadja a beállításjegyzék helyét.

A PowerShell-munkamenet tartalmainak megtekintése: Get-ChildItem -Path MyCompany:

4. példa: Állandó leképezett hálózati meghajtó létrehozása hitelesítő adatokkal

Ez a példa egy tartományi szolgáltatásfiók hitelesítő adataival hitelesített hálózati meghajtót képez le. A hitelesítő adatokat tároló PSCredential objektumról és a jelszavak SecureStringként való tárolásáról a hitelesítőadat-paraméter leírásában talál további információt.

$cred = Get-Credential -Credential Contoso\ServiceAccount
New-PSDrive -Name "S" -Root "\\Server01\Scripts" -Persist -PSProvider "FileSystem" -Credential $cred
Net Use

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

Feljegyzés

Ne feledje, hogy ha a fenti kódrészletet egy szkriptben használja, állítsa a Hatókör paraméter értékét "Globális" értékre, hogy a meghajtó az aktuális hatókörön kívül maradjon.

A $cred változó egy PSCredential objektumot tárol, amely tartalmazza a szolgáltatásfiók hitelesítő adatait. Get-Credentialkéri, hogy adja meg a SecureStringben tárolt jelszót.

New-PSDrive több paraméter használatával hozza létre a leképezett hálózati meghajtót. A Név a Windows által elfogadott meghajtóbetűjelet adja meg S . a Gyökér pedig egy távoli számítógépen található helyként definiálja\\Server01\Scripts. A Persist létrehoz egy Windows-megfeleltetett hálózati meghajtót, amely a helyi számítógépen van mentve. A PSProvider a szolgáltatót FileSystem adja meg. A hitelesítő adatok a változó használatával $cred kérik le a szolgáltatásfiók hitelesítő adatait a hitelesítéshez.

A leképezett meghajtó a helyi számítógépen tekinthető meg PowerShell-munkamenetekben, Fájlkezelő és olyan eszközökkel, mint a net use. A PowerShell-munkamenet tartalmainak megtekintése: Get-ChildItem -Path S:

5. példa: Állandó és ideiglenes meghajtók létrehozása

Ez a példa egy állandó leképezett hálózati meghajtó és egy ideiglenes PowerShell-meghajtó közötti különbséget mutatja be, amely ugyanahhoz a hálózati megosztáshoz van leképezve.

Ha bezárja a PowerShell-munkamenetet, majd megnyit egy új munkamenetet, az ideiglenes PSDrive: nem érhető el, de az állandó X: meghajtó elérhető. Amikor eldönti, hogy melyik módszert használja a hálózati meghajtók leképezéséhez, gondolja át, hogyan fogja használni a meghajtót. Például, hogy állandónak kell-e lennie, és hogy a meghajtónak láthatónak kell-e lennie más Windows-funkciók számára.

# Create a temporary PowerShell drive called PSDrive:
# that's 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-CimInstance 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-CimInstance Win32_LogicalDisk | Format-Table -Property DeviceID
Get-CimInstance 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

6. példa: Állandó meghajtó létrehozása szkriptben

A PSDrive-k abban a hatókörben jönnek létre, amelyben a New-PSDrive parancs fut. Ha a parancs egy szkripten belül fut, a meghajtóleképezés helyi a szkripthez. Amikor a szkript kilép, a meghajtó már nem érhető el.

New-PSDrive -Persist -Name "X" -PSProvider "FileSystem" -Root "\\Server01\Public" -Scope Global

Annak biztosításához, hogy a meghajtó a szkripten kívül is elérhető legyen, a Hatókör paraméterrel kell létrehoznia a meghajtót a globális hatókörben.

Paraméterek

-Confirm

Jóváhagyást kér a parancsmag futtatása előtt.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Olyan felhasználói fiókot ad meg, amely rendelkezik a művelet végrehajtásához engedéllyel. Alapértelmezés szerint az aktuális felhasználó.

A PowerShell 3.0 óta, amikor a gyökérparaméter értéke UNC elérési út, hitelesítő adatokkal hozhat létre fájlrendszer-meghajtókat.

Írjon be egy felhasználónevet (például User01 vagy Domain01\User01), vagy írjon be egy PSCredential objektumot, amelyet a Get-Credential parancsmag hoz létre. Ha beír egy felhasználónevet, a rendszer kéri a jelszó megadását.

A hitelesítő adatokat PSCredential objektum tárolja, a jelszót pedig SecureStringként tárolja a rendszer.

Feljegyzés

További információ a SecureString adatvédelemről: Mennyire biztonságos a SecureString?.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Description

A meghajtó rövid szöveges leírását adja meg. Írjon be bármilyen sztringet.

A munkamenet összes meghajtójának Get-PSDrive | Format-Table Name, Descriptionleírásának megtekintéséhez.

Egy adott meghajtó leírásának megtekintéséhez írja be a következőt (Get-PSDrive <DriveName>).Description:

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Megadja az új meghajtó nevét. Állandó leképezett hálózati meghajtók esetén használjon meghajtóbetűjelet. Az ideiglenes PowerShell-meghajtók esetében nem korlátozódik a meghajtóbetűjelekre, használjon érvényes sztringet.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Persist

Azt jelzi, hogy ez a parancsmag létrehoz egy Windows-megfeleltetett hálózati meghajtót. A Perzisztencia paraméter csak Windows rendszeren érhető el.

A leképezett hálózati meghajtókat a rendszer windowsos környezetben menti a helyi számítógépen. Állandóak, nem munkamenet-specifikusak, és Fájlkezelő és egyéb eszközökben tekinthetők meg és kezelhetők.

Ha a parancsot helyileg, pontalapú forráskezelés nélkül hatókörbe veszi, a Persist paraméter nem tárolja a PSDrive létrehozását azon a hatókörön túl, amelyben a parancsot futtatja. Ha parancsfájlon belül fut New-PSDrive , és azt szeretné, hogy az új meghajtó határozatlan ideig megmaradjon, akkor pontforrásként kell használnia a szkriptet. A legjobb eredmény érdekében egy új meghajtó megőrzésének kényszerítéséhez adja meg a Globális értéket a Hatókör paraméter értékeként, és adja meg a megőrzést a parancsban.

A meghajtó nevének betűnek kell lennie, például D vagy E. A gyökérparaméter értékének egy másik számítógép UNC elérési útjának kell lennie. A PSProvider paraméter értékének meg kell lennie FileSystem.

Windows-megfeleltetett hálózati meghajtó leválasztásához használja a Remove-PSDrive parancsmagot. Ha leválaszt egy Windows-megfeleltetett hálózati meghajtót, a leképezés véglegesen törlődik a számítógépről, nem csak az aktuális munkamenetből.

A leképezett hálózati meghajtók egy felhasználói fiókra vonatkoznak. Az emelt szintű munkamenetekben vagy munkamenetekben egy másik felhasználó hitelesítő adataival létrehozott leképezett meghajtók nem láthatók a különböző hitelesítő adatokkal indított munkamenetekben.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PSProvider

Megadja az ilyen típusú meghajtókat támogató PowerShell-szolgáltatót.

Ha például a meghajtó hálózati megosztáshoz vagy fájlrendszer-címtárhoz van társítva, a PowerShell-szolgáltató a FileSystem. Ha a meghajtó egy beállításkulcshoz van társítva, a szolgáltató az Registry.

Az ideiglenes PowerShell-meghajtók bármely PowerShell-szolgáltatóhoz társíthatók. A leképezett hálózati meghajtók csak a FileSystem szolgáltatóhoz társíthatók.

A PowerShell-munkamenetben lévő szolgáltatók listájának megtekintéséhez használja a Get-PSProvider parancsmagot.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Root

Megadja az adattár helyét, amelyre a PowerShell-meghajtó le van képezve.

Adjon meg például egy hálózati megosztást, például \\Server01\Publicegy helyi könyvtárat, például C:\Program Filesegy beállításkulcsot, például HKLM:\Software\Microsoft.

Az ideiglenes PowerShell-meghajtók bármely támogatott szolgáltatói meghajtón helyi vagy távoli helyhez társíthatók. A leképezett hálózati meghajtók csak távoli számítógépen lévő fájlrendszer-helyhez társíthatók.

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Scope

A meghajtó hatókörét adja meg. A paraméter elfogadható értékei a következők: globális, helyi és szkript, vagy az aktuális hatókörhöz viszonyított szám. A hatókörök száma 0 a hatókörök számán keresztül. Az aktuális hatókör száma 0, szülője pedig 1. További információ: about_Scopes.

Type:String
Position:Named
Default value:Local
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Bevitelek

None

Nem lehet objektumokat csövezni ehhez a parancsmaghoz

Kimenetek

PSDriveInfo

Ez a parancsmag egy PSDriveInfo objektumot ad vissza, amely a létrehozott meghajtót jelöli.

Jegyzetek

A PowerShell a következő aliasokat Get-PSDrivetartalmazza:

  • Minden platform:
    • ndr
  • Windows:
    • mount

New-PSDrive úgy lett kialakítva, hogy bármely szolgáltató által közzétett adatokkal működjön együtt. A munkamenetben elérhető szolgáltatók listázásához használja a következőt Get-PSProvider: . További információ a szolgáltatókról: about_Providers.

A leképezett hálózati meghajtók egy felhasználói fiókra vonatkoznak. Az emelt szintű munkamenetekben vagy munkamenetekben egy másik felhasználó hitelesítő adataival létrehozott leképezett meghajtók nem láthatók a különböző hitelesítő adatokkal indított munkamenetekben.