Using WMI to link a Disk Volume to a Physical Disk with PowerShell
03 Nov 2017
local_offer
wmi
local_offer
powershell
$diskdrive = gwmi win32_diskdrive
foreach($drive in $diskdrive) {
out-host -InputObject "`nDrive: deviceid-$($drive.deviceid.substring(4)) Model - $($drive.model)"
##partition
$partitions = gwmi -Query "ASSOCIATORS OF {Win32_DiskDrive.DeviceID=`"$($drive.DeviceID.replace('\','\\'))`"} WHERE AssocClass = Win32_DiskDriveToDiskPartition"
foreach($part in $partitions) {
Out-Host -InputObject "`tPartition: $($part.name)"
$vols = gwmi -Query "ASSOCIATORS OF {Win32_DiskPartition.DeviceID=`"$($part.DeviceID)`"} WHERE AssocClass = Win32_LogicalDiskToPartition"
foreach($vol in $vols) {
out-host -InputObject "`t`t$($vol.name)"
}
}
}
Вывод:
Drive: deviceid-PHYSICALDRIVE4 Model - Microsoft Virtual Disk
Partition: Диск #4, раздел #0
Partition: Диск #4, раздел #1
C:
Drive: deviceid-PHYSICALDRIVE2 Model - WDC WD1002FBYS-02A6B0
Partition: Диск #2, раздел #0
G:
Drive: deviceid-PHYSICALDRIVE1 Model - WDC WD1003FBYX-01Y7B0
Partition: Диск #1, раздел #0
G:
Drive: deviceid-PHYSICALDRIVE6 Model - Microsoft Virtual Disk
Partition: Диск #6, раздел #0
F:
Drive: deviceid-PHYSICALDRIVE5 Model - Microsoft Virtual Disk
Drive: deviceid-PHYSICALDRIVE0 Model - WDC WD1003FBYX-01Y7B0
Partition: Диск #0, раздел #0
Partition: Диск #0, раздел #1
D:
Partition: Диск #0, раздел #2
Drive: deviceid-PHYSICALDRIVE3 Model - WDC WD1003FBYX-01Y7B0
Partition: Диск #3, раздел #0
H: