Как проверить диск виртуальный, Powershell
-
21-12-2019 - |
Вопрос
Как проверить диск виртуальный ли он (создан с помощью subst
команда)?
Get-VirtualDisk
не работает (powershell 3.0)
Решение
Вы можете извлечь первый символ из каждой строки subst
выведите результат в массив и проверьте, содержится ли в этом массиве конкретный диск:
$substed = subst | % { $_.Substring(0,1) + ':' }
if ( $substed -contains 'x:' ) {
# do stuff
}
Другие советы
Вы можете проанализировать результат запуска subst
, чтобы получить список существующих замеек, таких как:
$substdrives = @{};
(subst) |% { $part = $_ -split '\\: => '; $substdrives[$part[0]] = $part[1] } ;
$substdrives | ft
. subst
не создает виртуальный диск, поэтому Get-VirtualDisk
не вернет эти диски.
Возможно, вы сможете использовать Get-PSDrive
и искать диски, на которых Description
свойство соответствует Description
собственность другого диска.Например, в моей системе у меня есть subst
ed Q указывает путь на моем диске C:
>get-psdrive |where-object {$_.provider -like "*filesystem"}|select name,description|ft -auto
Name Description
---- -----------
C OSDisk
D
E
P
Q OSDisk
U
Не связан с StackOverflow