New-PSDrive
Vytvoří dočasné a trvalé mapované síťové jednotky.
Syntaxe
New-PSDrive
[-Name] <String>
[-PSProvider] <String>
[-Root] <String>
[-Description <String>]
[-Scope <String>]
[-Persist]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Description
Rutina New-PSDrive
vytvoří dočasné a trvalé jednotky mapované na umístění v úložišti dat nebo přidružené k umístění v úložišti dat, například síťovou jednotku, adresář na místním počítači nebo klíč registru a trvalé síťové jednotky mapované systémem Windows, které jsou přidružené k umístění systému souborů na vzdáleném počítači.
Dočasné jednotky existují pouze v aktuální relaci PowerShellu a v relacích, které vytvoříte v aktuální relaci.
Můžou mít libovolný název, který je platný v PowerShellu, a je možné ho namapovat na jakýkoli místní nebo vzdálený prostředek.
Dočasné jednotky PowerShellu můžete použít pro přístup k datům v přidruženém úložišti dat stejně jako u jakékoli mapované síťové jednotky.
Umístění na jednotku můžete změnit pomocí Set-Location
, cdnebo chdira získat přístup k obsahu jednotky pomocí Get-Item
, Get-ChildItem
nebo dir.
Vzhledem k tomu, že dočasné jednotky jsou známé jenom pro PowerShell, nemůžete k nim přistupovat pomocí Průzkumníka souborů, rozhraní WMI (Windows Management Instrumentation), modelu COM (Component Object Model) nebo rozhraní Microsoft .NET Framework nebo pomocí nástrojů, jako je net Use.
Do New-PSDrive
ve Windows PowerShellu 3.0 se přidají následující funkce:
- Mapované síťové jednotky.
K vytvoření namapovaných síťových jednotek systému Windows můžete použít parametr Zachovat
New-PSDrive
. Na rozdíl od dočasných jednotek PowerShellu nejsou namapované síťové jednotky windows specifické pro relaci. Ukládají se ve Windows a dají se spravovat pomocí standardních nástrojů windows, jako je Průzkumník souborů a Net Use. Mapované síťové jednotky musí mít název písmena jednotky a musí být připojené ke vzdálenému umístění systému souborů. Pokud je příkaz vymezen místně (bez tečk-sourcing), Zachovat parametr neuchová vytvoření PSDrive nad rámec, ve kterém je příkaz spuštěný. Pokud spouštíteNew-PSDrive
uvnitř skriptu a chcete, aby jednotka trvala neomezeně dlouho, musíte skript vytvořit tečkou. Nejlepších výsledků dosáhnete, pokud chcete vynutit trvalé uchování nové jednotky, přidejte do příkazu parametr Scope a nastavte jeho hodnotu na Global. - Externí jednotky. Když je externí jednotka připojená k počítači, PowerShell automaticky přidá PSDrive do systému souborů, který představuje novou jednotku. Nemusíte restartovat PowerShell. Podobně když se externí jednotka odpojí od počítače, PowerShell automaticky odstraní PSDrive, který představuje odebranou jednotku.
- Přihlašovací údaje pro cesty UNC.
Pokud je hodnota parametru Root cesta UNC, například \\Server\Share, přihlašovací údaje zadané v hodnotě parametru Credential se použijí k vytvoření PSDrive. Jinak přihlašovacích údajů není efektivní při vytváření nových jednotek systému souborů.
Příklady
Příklad 1: Vytvoření jednotky mapované na sdílenou síť
New-PSDrive -Name "P" -PSProvider "FileSystem" -Root "\\Server01\Public"
Name Provider Root
---- -------- ----
P FileSystem \\Server01\Public
Tento příkaz vytvoří dočasnou jednotku PowerShellu s názvem P: mapovanou na sdílenou složku \\Server01\Public network.
Pomocí parametru Name určuje název jednotky, parametr PSProvider k určení zprostředkovatele systému souborů PowerShellu a parametr root k určení sdílené síťové složky.
Po dokončení příkazu se obsah sdílené složky \\Server01\Public zobrazí na jednotce P: .
Pokud je chcete zobrazit, zadejte: dir P:
.
Příklad 2: Vytvoření dočasné jednotky
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
Tento příkaz vytvoří dočasnou jednotku PowerShellu, která poskytuje rychlý přístup k místnímu adresáři. Vytvoří jednotku s názvem MyDocs, která je namapovaná na adresář C:\Documents and Settings\User01\My Documents v místním počítači.
Používá Název zadat název jednotky, PSProvider určit zprostředkovatele systému souborů PowerShellu, kořenový určit cestu ke složce Dokumenty a Popis parametr pro vytvoření popisu jednotky.
Po dokončení příkazu se obsah složky Dokumenty zobrazí na MyDocs:
jednotce.
Pokud je chcete zobrazit, zadejte: dir MyDocs:
.
Příklad 3: Vytvoření jednotky pro klíč registru
New-PSDrive -Name "MyCompany" -PSProvider "Registry" -Root "HKLM:\Software\MyCompany"
Name Provider Root
---- -------- ----
MyCompany Registry HKEY_LOCAL_MACHINE\Software\MyCo...
Tento příkaz vytvoří dočasnou jednotku PowerShellu, která poskytuje rychlý přístup k často kontrolovanému klíči registru.
Vytvoří jednotku s názvem MyCompany, která je namapovaná na klíč registru HKLM\Software\MyCompany
.
Používá Název zadat název jednotky, PSProvider určit zprostředkovatele registru PowerShellu a kořenový zadat klíč registru.
Po dokončení příkazu se obsah klíče MyCompany zobrazí v jednotce MyCompany:
.
Pokud je chcete zobrazit, zadejte: dir MyCompany:
.
Příklad 4: Vytvoření trvalé mapované síťové jednotky
New-PSDrive -Name "S" -Root "\\Server01\Scripts" -Persist -PSProvider "FileSystem"
Net Use
Status Local Remote Network
---------------------------------------------------------
OK S: \\Server01\Scripts Microsoft Windows Network
Tento příkaz vytvoří na místním počítači namapovanou síťovou jednotku S. Jednotka S je mapována na sdílenou síťovou složku \\Server01\Scripts.
Příkaz používá New-PSDrive
k vytvoření mapované síťové jednotky.
Používá Trvalé k vytvoření namapované síťové jednotky systému Windows, která je uložena v místním počítači.
Příkaz používá Název k zadání názvu písmena, který systém Windows přijímá, a kořenový k určení umístění ve vzdáleném počítači. K určení zprostředkovatele FileSystem používá PSProvider.
Výslednou jednotku je možné zobrazit v jiných relacích PowerShellu na místním počítači, v Průzkumníku Windows a v jiných nástrojích, jako je například Net Use.
Příklad 5: Vytvoření trvalých a dočasných jednotek
# 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
Tento příklad ukazuje rozdíl mezi trvalou mapovanou síťovou jednotkou a dočasnou jednotkou PowerShellu, která je namapovaná na stejnou sdílenou síťovou složku.
Pokud relaci PowerShellu zavřete a pak otevřete novou, jednotka PSDrive: je pryč a jednotka X:
zůstane zachovaná. Proto při rozhodování, kterou metodu použít k mapování síťových jednotek, zvažte, jak budete jednotku používat, zda musí být trvalá a zda musí být jednotka viditelná pro jiné funkce Systému Windows.
Parametry
-Confirm
Před spuštěním rutiny vás vyzve k potvrzení.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Credential
Určuje uživatelský účet, který má oprávnění k provedení této akce. Výchozí hodnota je aktuální uživatel.
Zadejte uživatelské jméno, například "User01" nebo "Domain01\User01", nebo zadejte PSCredential objekt, například objekt vygenerovaný rutinou Get-Credential
.
Pokud zadáte uživatelské jméno, tato rutina vás vyzve k zadání hesla.
Počínaje windows PowerShellem 3.0 je hodnota parametru Root cesta UNC, můžete k vytvoření jednotek systému souborů použít přihlašovací údaje. Tento parametr nepodporuje všichni poskytovatelé PowerShellu.
Typ: | PSCredential |
Position: | Named |
Default value: | Current user |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Description
Určuje stručný textový popis jednotky. Zadejte libovolný řetězec.
Pokud chcete zobrazit popisy všech jednotek v relaci, zadejte Get-PSDrive | Format-Table Name, Description
.
Pokud chcete zobrazit popis určitých jednotek, zadejte (Get-PSDrive \<DriveName\>).Description
.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Name
Určuje název nové jednotky. U trvalých namapovaných síťových jednotek zadejte písmeno jednotky. Pro dočasné jednotky PowerShellu zadejte libovolný platný řetězec; nejste omezeni písmeny jednotek.
Typ: | String |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Persist
Označuje, že tato rutina vytvoří namapovanou síťovou jednotku windows. Mapované síťové jednotky se ukládají ve Windows na místním počítači. Jsou trvalé, ne specifické pro relaci a dají se zobrazit a spravovat v Průzkumníkovi souborů a dalších nástrojích.
Když příkaz vymešíte místně, tzn. bez tečkování, parametr Persist neuchová vytvoření PSDrive nad rámec, ve kterém příkaz spouštíte.
Pokud spustíte New-PSDrive
uvnitř skriptu a chcete, aby nová jednotka trvale trvala, je nutné skript vytvořit tečkou.
Nejlepších výsledků dosáhnete tak, že pokud chcete vynutit zachování nové jednotky, zadejte jako hodnotu parametru Scope kromě přidání parametru Zachovat do příkazu.
Název jednotky musí být písmeno, například D nebo E. Hodnota parametru Root musí být cesta UNC jiného počítače. Hodnota parametru PSProvider musí být FileSystem.
K odpojení namapované síťové jednotky systému Windows použijte rutinu Remove-PSDrive
.
Když odpojíte namapovanou síťovou jednotku systému Windows, mapování se trvale odstraní z počítače, nikoli pouze z aktuální relace.
Mapované síťové jednotky jsou specifické pro uživatelský účet. Mapované jednotky vytvořené ve zvýšených relacích nebo relacích používajících přihlašovací údaje jiného uživatele nejsou viditelné v relacích, které začaly používat jiné přihlašovací údaje.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-PSProvider
Určuje zprostředkovatele PowerShellu, který podporuje jednotky tohoto typu.
Pokud je například jednotka přidružená ke sdílené síťové složce nebo adresáři systému souborů, zprostředkovatel PowerShellu je FileSystem. Pokud je jednotka přidružená k klíči registru, poskytovatel je Registr.
Dočasné jednotky PowerShellu je možné přidružit k libovolnému poskytovateli PowerShellu. Mapované síťové jednotky lze přidružit pouze k poskytovateli fileSystem.
Pokud chcete zobrazit seznam zprostředkovatelů v relaci PowerShellu, použijte rutinu Get-PSProvider
.
Typ: | String |
Position: | 1 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Root
Určuje umístění úložiště dat, na které se mapuje jednotka PowerShellu.
Zadejte například sdílenou síťovou složku, například \\Server01\Public, místní adresář, například C:\Program Files nebo klíč registru, například HKLM:\Software\Microsoft.
Dočasné jednotky PowerShellu je možné přidružit k místnímu nebo vzdálenému umístění na libovolné podporované jednotce poskytovatele. Mapované síťové jednotky lze přidružit pouze k umístění systému souborů ve vzdáleném počítači.
Typ: | String |
Position: | 2 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Scope
Určuje rozsah jednotky. Přijatelné hodnoty pro tento parametr jsou: Global, Local a Script nebo číslo relativní k aktuálnímu oboru. Rozsahy číslo 0 až počet oborů. Aktuální číslo oboru je 0 a nadřazené číslo je 1. Další informace najdete v tématu about_Scopes.
Typ: | String |
Position: | Named |
Default value: | Local |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-UseTransaction
Zahrnuje příkaz v aktivní transakci. Tento parametr je platný pouze v případě, že probíhá transakce. Další informace najdete v tématu about_Transactions.
Typ: | SwitchParameter |
Aliasy: | usetx |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-WhatIf
Ukazuje, co se stane, když se rutina spustí. Rutina se nespustí.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
None
Vstup do této rutiny nelze převést.
Výstupy
Poznámky
-
New-PSDrive
je navržená tak, aby fungovala s daty vystavenými libovolným poskytovatelem. Pokud chcete zobrazit seznam poskytovatelů dostupných ve vaší relaci, použijteGet-PSProvider
. Další informace o poskytovateli naleznete v tématu about_Providers. - Mapované síťové jednotky jsou specifické pro uživatelský účet. Mapované jednotky vytvořené ve zvýšených relacích nebo relacích používajících přihlašovací údaje jiného uživatele nejsou viditelné v relacích, které začaly používat jiné přihlašovací údaje.