Get-PSDrive
Получает диски Windows PowerShell, используемые в текущем сеансе.
Синтаксис
Get-PSDrive [-LiteralName] <string[]> [-PSProvider <string[]>] [-Scope <string>] [-UseTransaction] [<CommonParameters>]
Get-PSDrive [[-Name] <string[]>] [-PSProvider <string[]>] [-Scope <string>] [-UseTransaction] [<CommonParameters>]
Описание
Командлет Get-PSDrive получает диски Windows PowerShell в текущем сеансе. Можно получить конкретный диск или все диски, используемые в консоли.
Командлет Get-PSDrive получает следующие диски:
-- логические диски Windows, включая диски, подключенные к общим сетевым ресурсам;
-- диски, предоставляемые поставщиками Windows PowerShell (например, диски Certificate:, Function: и Alias:), а также диски HKLM: и HKCU:, предоставляемые поставщиком Windows PowerShell Registry;
-- диски, созданные с помощью командлета New-PSDrive.
Командлет Get-PSDrive не возвращает сопоставленные диски Windows, которые были добавлены или созданы после открытия консоли Windows PowerShell.
Параметры
-LiteralName <string[]>
Задает имя диска Windows PowerShell.
Значение параметра LiteralName используется точно в том виде, в котором оно введено. Никакие символы не интерпретируются как подстановочные знаки. Если имя включает escape-символы, его необходимо заключить в одиночные кавычки. Одиночные кавычки указывают оболочке Windows PowerShell, что никакие символы не следует интерпретировать как escape-символы.
Обязательно? |
true |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
false |
-Name <string[]>
Получает только указанные диски. Введите имя или букву диска без двоеточия (:).
Обязательно? |
false |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
false |
-PSProvider <string[]>
Получает только диски, поддерживаемые указанным поставщиком Windows PowerShell. Введите имя поставщика, например FileSystem, Registry или Certificate.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
false |
-Scope <string>
Получает только диски Windows PowerShell, определенные в указанной области. Допустимые значения: "Global", "Local", "Script" или номер относительно текущей области (от 0 до количества областей, где 0 — текущая область, а 1 — ее родительская область). По умолчанию используется значение "Local". Дополнительные сведения см. в разделе about_Scopes.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
false |
-UseTransaction
Включает команду в активную транзакцию. Этот параметр допустим, только если транзакция выполняется. Дополнительные сведения см. в разделе about_Transactions.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
Нет Объекты невозможно передать командлету Get-PSDrive по конвейеру. |
Выходные данные |
System.Management.Automation.PSDriveInfo Командлет Get-PSDrive возвращает объекты, представляющие диски Windows PowerShell в этом сеансе. |
Примечания
Командлет Get-PSDrive предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы получить список поставщиков, доступных в текущем сеансе, введите команду "Get-PSProvider". Дополнительные сведения см. в разделе About_Providers.
Пример 1
C:\PS>get-psdrive
Name Provider Root
---- -------- ----
Alias Alias
C FileSystem C:\
cert Certificate \
D FileSystem D:\
Env Environment
Function Function
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Variable Variable
X FileSystem X:\
Описание
-----------
Эта команда получает диски Windows PowerShell в текущем сеансе.
Выходными данными являются жесткий диск (C:) и дисковод компакт-дисков (D:) на компьютере, диски, предоставляемые поставщиками Windows PowerShell (Alias:, Cert:, Env:, Function:, HKCU:, HKLM: и Variable:), и диск, отображающий общие сетевые ресурсы (X:).
Пример 2
C:\PS>get-psdrive d
Name Provider Root
---- -------- ----
D FileSystem D:\
Описание
-----------
Эта команда отображает диск D: локального компьютера. Обратите внимание, что за буквой диска не следует двоеточие.
Пример 3
C:\PS>get-psdrive -psprovider filesystem
Name Provider Root
---- -------- ----
C FileSystem C:\
D FileSystem D:\
X FileSystem X:\
Y FileSystem \\Server01\Public
Z FileSystem C:\Windows\System32
Описание
-----------
Эта команда отображает все диски, поддерживаемые поставщиком Windows PowerShell FileSystem. К ним относятся жесткие диски, логические разделы, подключенные сетевые диски, а также диски созданные с помощью командлета New-PSDrive и подключенные к дискам файловой системы.
В этом примере показано, что в случае диска, созданного с помощью командлета New-PSDrive, в свойстве Root содержится имя сопоставленного с этим диском местоположения. В случае диска Windows в свойстве Root содержится только буква диска.
Пример 4
C:\PS>if (!(get-psdrive X)) {
new-psdrive -name X -psprovider Registry -root HKLM:\Network
}
else { write-host "The X: drive is already in use." }
Описание
-----------
Эта команда проверяет, существует ли диск Windows PowerShellс именем "X". Если нет, с помощью командлета New-PSDrive создается диск Windows PowerShell, который подключается к разделу реестра "HKLM:\Network".
Пример 5
C:\PS>get-psdrive -provider filesystem
C:\PS> get-psdrive -provider filesystem
Name Provider Root
---- -------- ----
C FileSystem C:\
D FileSystem D:\
X FileSystem X:\
Y FileSystem \\Server01\Public
Z FileSystem C:\Windows\System32
C:\PS> net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
X: \\Server01\Public Microsoft Windows Network
C:\PS> [System.IO.DriveInfo]::getdrives()
Name : C:\
DriveType : Fixed
DriveFormat : NTFS
IsReady : True
AvailableFreeSpace : 39831498752
TotalFreeSpace : 39831498752
TotalSize : 79900368896
RootDirectory : C:\
VolumeLabel :
Name : D:\
DriveType : CDRom
DriveFormat :
IsReady : False
AvailableFreeSpace :
TotalFreeSpace :
TotalSize :
RootDirectory : D:\
VolumeLabel :
Name : X:\
DriveType : Network
DriveFormat : NTFS
IsReady : True
AvailableFreeSpace : 36340559872
TotalFreeSpace : 36340559872
TotalSize : 36413280256
RootDirectory : X:\
VolumeLabel : D_Drive
C:\PS> get-wmiobject win32_logicaldisk
DeviceID : C:
DriveType : 3
ProviderName :
FreeSpace : 39831252992
Size : 79900368896
VolumeName :
DeviceID : D:
DriveType : 5
ProviderName :
FreeSpace :
Size :
VolumeName :
DeviceID : X:
DriveType : 4
ProviderName : \\server01\public
FreeSpace : 36340559872
Size : 36413280256
VolumeName : D_Drive
C:\PS> get-wmiobject win32_networkconnection
LocalName RemoteName
-------------- ------------
x: \\server01\public
Описание
-----------
В этом примере сравниваются типы дисков файловой системы, отображаемых с помощью командлета Get-PSDrive, и типы дисков, отображаемых другими способами. В этом примере показаны различные способы отображения дисков в оболочке Windows PowerShell; также в нем показано, что диски, созданные с помощью командлета New-PSDrive, доступны только в Windows PowerShell.
Первая команда с помощью командлета Get-PSDrive получает все диски файловой системы, используемые в консоли Windows PowerShell. К ним относятся жесткие диски C: и D:, отображаемый сетевой диск X:, а также два диска Windows PowerShell Y: и Z:, созданные с помощью командлета New-PsDrive.
Команда "net use", показывающая подключенные сетевые диски Windows, отображает только диск X:. Она не отображает диски, созданные с помощью командлета New-PSDrive. Эта команда также показывает, что диск X: подключен к общему сетевому ресурсу "\\Server01\Public".
В третьей команде используется метод GetDrives класса System.IO.DriveInfo инфраструктуры Microsoft .NET Framework. Эта команда отображает диски файловой системы Windows, включая диск X:, но не диски, созданные с помощью командлета New-PSDrive.
Четвертая команда с помощью командлета Get-WmiObject отображает экземпляры класса Win32_LogicalDisk. Она отображает диски C:, D:, и X:, но не диски, созданные с помощью командлета New-PSDrive.
Последняя команда с помощью командлета Get-WmiObject отображает экземпляры класса Win32_NetworkConnection. Результат аналогичен результату выполнения команды "net use" — отображается только диск X:.
См. также
Концепции
about_Providers
New-PSDrive
Remove-PSDrive
Get-Help
Get-Command
Get-Member