Get-PSDrive
Získá jednotky v aktuální relaci.
Syntax
Name (Výchozí)
Get-PSDrive
[[-Name] <String[]>]
[-Scope <String>]
[-PSProvider <String[]>]
[<CommonParameters>]
LiteralName
Get-PSDrive
[-LiteralName] <String[]>
[-Scope <String>]
[-PSProvider <String[]>]
[<CommonParameters>]
Description
Rutina Get-PSDrive získá jednotky v aktuální relaci. V relaci můžete získat konkrétní jednotku nebo všechny jednotky.
Tato rutina získá následující typy jednotek:
- Logické jednotky Windows v počítači, včetně jednotek mapovaných na sdílené síťové složky.
- Jednotky vystavené poskytovateli PowerShellu (například Certificate:, Function:, and Alias: drive) a HKLM: a HKCU: jednotky, které jsou vystaveny poskytovatelem registru Windows PowerShellu.
- Dočasné jednotky zadané relací a trvalé mapované síťové jednotky, které vytvoříte pomocí rutiny New-PSDrive.
Počínaje windows PowerShellem 3.0 může parametr Zachovat rutiny New-PSDrive vytvářet mapované síťové jednotky uložené v místním počítači a jsou k dispozici v jiných relacích. Další informace najdete v článku New-PSDrive.
Kromě toho windows PowerShell 3.0, když je externí jednotka připojená k počítači, Windows PowerShell automaticky přidá PSDrive do systému souborů, který představuje novou jednotku. Windows PowerShell nemusíte restartovat. Podobně když se externí jednotka odpojí od počítače, Windows PowerShell automaticky odstraní jednotku PSDrive, která představuje odebranou jednotku.
Příklady
Příklad 1: Získání jednotek v aktuální relaci
PS C:\> Get-PSDrive
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Alias Alias
C 202.06 23718.91 FileSystem C:\
Cert Certificate \
D 1211.06 123642.32 FileSystem D:\
Env Environment
Function Function
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Variable Variable
Tento příkaz získá jednotky v aktuální relaci.
Výstup zobrazuje pevný disk (C:), CD-ROM jednotku (D:) a jednotky vystavené poskytovateli Windows PowerShellu (Alias:, Cert:, Env:, Function:, HKCU:, HKLM:, and Variable:).
Příklad 2: Získání jednotky v počítači
PS C:\foo> Get-PSDrive D
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
D 1211.06 123642.32 FileSystem D:\
Tento příkaz načte jednotku D: v počítači. Všimněte si, že písmeno jednotky v příkazu není následované dvojtečku.
Příklad 3: Získání všech jednotek podporovaných poskytovatelem systému souborů Windows PowerShellu
PS C:\> Get-PSDrive -PSProvider FileSystem
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \\Music\GratefulDead
Tento příkaz získá všechny jednotky podporované poskytovatelem systému souborů Windows PowerShellu. To zahrnuje pevné jednotky, logické oddíly, mapované síťové jednotky a dočasné jednotky, které vytvoříte pomocí rutiny New-PSDrive.
Příklad 4: Zkontrolujte, jestli se jednotka používá jako název jednotky Windows PowerShellu.
if (Get-PSDrive X -ErrorAction SilentlyContinue) {
Write-Host 'The X: drive is already in use.'
} else {
New-PSDrive -Name X -PSProvider Registry -Root HKLM:\SOFTWARE
}
Tento příkaz zkontroluje, jestli se jednotka X už používá jako název jednotky Windows PowerShellu.
Pokud tomu tak není, příkaz pomocí rutiny New-PSDrive vytvoří dočasnou jednotku mapovanou na klíč registru HKLM:\SOFTWARE.
Příklad 5: Porovnání typů systémových jednotek souborů
PS C:\> Get-PSDrive -PSProvider FileSystem
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \\Music\GratefulDead
X Registry HKLM:\Network
PS C:\> net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
OK G: \\Server01\Public Microsoft Windows Network
PS C:\> [System.IO.DriveInfo]::GetDrives() | Format-Table
Name DriveType DriveFormat IsReady AvailableFreeSpace TotalFreeSpace TotalSize RootDirectory VolumeLabel
---- --------- ----------- ------- ------------------ -------------- --------- ------------- -----------
A:\ Network False A:\
C:\ Fixed NTFS True 771920580608 771920580608 988877418496 C:\ Windows
D:\ Fixed NTFS True 689684144128 689684144128 1990045179904 D:\ Big Drive
E:\ CDRom False E:\
G:\ Network NTFS True 69120000 69120000 104853504 G:\ GratefulDead
PS N:\> Get-CimInstance -Class Win32_LogicalDisk
DeviceID DriveType ProviderName VolumeName Size FreeSpace
-------- --------- ------------ ---------- ---- ---------
A: 4
C: 3 Windows 988877418496 771926069248
D: 3 Big! 1990045179904 689684144128
E: 5
G: 4 \\Music\GratefulDead 988877418496 771926069248
PS C:\> Get-CimInstance -Class Win32_NetworkConnection
LocalName RemoteName ConnectionState Status
--------- ---------- --------------- ------
G: \\Music\GratefulDead Connected OK
Tento příklad porovnává typy jednotek systému souborů, které jsou zobrazeny Get-PSDrive s těmi, které se zobrazují pomocí jiných metod. Tento příklad ukazuje různé způsoby zobrazení jednotek v prostředí Windows PowerShell a ukazuje, že jednotky specifické pro relaci vytvořené pomocí rutiny New-PSDrive jsou přístupné jenom v prostředí Windows PowerShell.
První příkaz používá Get-PSDrive k získání všech jednotek systému souborů v relaci. To zahrnuje pevné jednotky (C: a D:), mapovanou síťovou jednotku (G:), která byla vytvořena pomocí parametru PersistNew-PSDrivea jednotky PowerShellu (T:), která byla vytvořena pomocí New-PSDrive bez parametru Trvalý.
Příkaz net use zobrazí namapované síťové jednotky Systému Windows, v tomto případě zobrazí pouze jednotku G. Nezobrazuje jednotku X: vytvořenou New-PSDrive. Ukazuje, že jednotka G: je také mapována na \\Music\GratefulDead.
Třetí příkaz používá metodu GetDrives třídy Microsoft .NET Framework System.IO.DriveInfo. Tento příkaz získá jednotky systému souborů Windows, včetně jednotky G:, ale nezískne jednotky vytvořené New-PSDrive.
Čtvrtý příkaz používá rutinu Get-CimInstance k získání instancí Win32_LogicalDisk třídy. Vrátí jednotky A:, C:, D:, E:a G, ale ne jednotky vytvořené New-PSDrive.
Poslední příkaz používá rutinu Get-CimInstance k zobrazení instancí Win32_NetworkConnection třídy. Stejně jako net use, vrátí pouze trvalou jednotku G: vytvořenou New-PSDrive.
Parametry
-LiteralName
Určuje název jednotky.
Hodnota LiteralName se používá přesně tak, jak je zadána. Žádný znak není interpretován jako zástupný znak. Pokud název obsahuje řídicí znaky, uzavřete ho do jednoduchých uvozovek. Jednoduché uvozovky říkají prostředí Windows PowerShell, aby nepřekládaly žádné znaky jako řídicí sekvence.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
LiteralName
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Name
Určuje název nebo název jednotek, které tato rutina v operaci získá, jako pole řetězců.
Zadejte název jednotky nebo písmeno bez dvojtečky (:).
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
Name
| Position: | 0 |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-PSProvider
Určuje jako pole řetězců zprostředkovatele Windows PowerShellu. Tato rutina získá pouze jednotky podporované tímto poskytovatelem. Zadejte název zprostředkovatele, například FileSystem, Registry nebo Certificate.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Scope
Určuje obor, ve kterém tato rutina získá jednotky.
Přijatelné hodnoty pro tento parametr jsou:
- Globální
- Místní
- Scénář
- číslo relativní k aktuálnímu oboru (0 až počet oborů, kde 0 je aktuální obor a 1 je jeho nadřazený). "Místní" je výchozí hodnota.
Další informace najdete v části about_Scopes.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
None
Do tohoto cmdletu nemůžete předávat objekty.
Výstupy
PSDriveInfo
Tato rutina vrátí objekty představující jednotky v relaci.
Poznámky
PowerShell obsahuje následující aliasy pro Get-PSDrive:
Všechny platformy:
gdr
Tato rutina je navržená tak, aby fungovala s daty vystavenými jakýmkoli poskytovatelem. Pokud chcete zobrazit seznam poskytovatelů dostupných ve vaší relaci, použijte rutinu
Get-PSProvider. Pro více informací viz about_Providers.Mapované síťové jednotky vytvořené pomocí parametru Persist rutiny New-PSDrive jsou specifické pro uživatelský účet. Namapované síťové jednotky, které vytvoříte v relacích, které jsou spuštěny s možností Spustit jako správce nebo s přihlašovacími údaji jiného uživatele, nejsou viditelné v relacích, které jsou spuštěny bez explicitních přihlašovacích údajů nebo s přihlašovacími údaji aktuálního uživatele.