我正在尝试访问磁盘的属性,并专门查找其父值,如下面的屏幕截图所示: Disk properties as seen by right clicking on a disk and trying to fetch the parent value
我无法获取正确的命令行开关来获取信息。我尝试过以下命令:https://gallery.technet.microsoft.com/scriptcenter/feb9341a-fd0a-47af-adff-e3ae33071a22
我也试过" Get-Disks并没有帮助我得到我想要的东西。想知道是否有一个powershell命令可以让用户获取磁盘的父值?
非常感谢这里的任何帮助。
谢谢, Kaushik Prakash
答案 0 :(得分:1)
您可以使用以下脚本来检索值:
$disk = (gwmi win32_DiskDrive -Property * | ?{$_.PnpDeviceID -eq 'SCSI\DISK&VEN_SAMSUNG&PROD_SSD_850_EVO_1TB\4&3BDA36C&0&010000'})
$PnpEntity = gwmi -query "ASSOCIATORS OF {$($Disk.__RELPATH)} where resultclass = Win32_PnpEntity"
switch ($Disk.InterfaceType)
{
'IDE'
{
$parentID = (gwmi -query "ASSOCIATORS OF {$($PnpEntity.__RELPATH)} where resultclass = Win32_IDEController").PnpDeviceID
break;
}
'SCSI'
{
$parentID = (gwmi -query "ASSOCIATORS OF {$($PnpEntity.__RELPATH)} where resultclass = Win32_SCSIController").PnpDeviceID
break;
}
'USB'
{
$parentID = (gwmi -query "ASSOCIATORS OF {$($PnpEntity.__RELPATH)} where resultclass = Win32_USBController").PnpDeviceID
break;
}
Default {}
}
Write-host $parentID
享受;-)
答案 1 :(得分:0)
您可以使用此功能,也可以使用win32_logicaldisk类获取信息:
$Items = get-wmiobject -class "Win32_DiskDrive" -namespace "root\CIMV2"
foreach ($Item in $Items) {
write-host "Availability: " $Item.Availability
write-host "Bytes Per Sector: " $Item.BytesPerSector
write-host "Capabilities: " $Item.Capabilities
write-host "Capability Descriptions: " $Item.CapabilityDescriptions
write-host "Caption: " $Item.Caption
write-host "Compression Method: " $Item.CompressionMethod
write-host "Configuration Manager Error Code: " $Item.ConfigManagerErrorCode
write-host "Configuration Manager User Configuration: " $Item.ConfigManagerUserConfig
write-host "Creation Class Name: " $Item.CreationClassName
write-host "Default Block Size: " $Item.DefaultBlockSize
write-host "Description: " $Item.Description
write-host "Device ID: " $Item.DeviceID
write-host "Error Cleared: " $Item.ErrorCleared
write-host "Error Description: " $Item.ErrorDescription
write-host "Error Methodology: " $Item.ErrorMethodology
write-host "Index: " $Item.Index
write-host "Installation Date: " $Item.InstallDate
write-host "Interface Type: " $Item.InterfaceType
write-host "Last Error Code: " $Item.LastErrorCode
write-host "Manufacturer: " $Item.Manufacturer
write-host "Maximum Block Size: " $Item.MaxBlockSize
write-host "Maximum Media Size: " $Item.MaxMediaSize
write-host "Media Loaded: " $Item.MediaLoaded
write-host "Media Type: " $Item.MediaType
write-host "Minimum Block Size: " $Item.MinBlockSize
write-host "Model: " $Item.Model
write-host "Name: " $Item.Name
write-host "Needs Cleaning: " $Item.NeedsCleaning
write-host "Number Of Media Supported: " $Item.NumberOfMediaSupported
write-host "Partitions: " $Item.Partitions
write-host "PNP Device ID: " $Item.PNPDeviceID
write-host "Power Management Capabilities: " $Item.PowerManagementCapabilities
write-host "Power Management Supported: " $Item.PowerManagementSupported
write-host "SCSI Bus: " $Item.SCSIBus
write-host "SCSI Logical Unit: " $Item.SCSILogicalUnit
write-host "SCSI Port: " $Item.SCSIPort
write-host "SCSI Target ID: " $Item.SCSITargetId
write-host "Sectors Per Track: " $Item.SectorsPerTrack
write-host "Signature: " $Item.Signature
write-host "Size: " $Item.Size
write-host "Status: " $Item.Status
write-host "Status Information: " $Item.StatusInfo
write-host "System Creation Class Name: " $Item.SystemCreationClassName
write-host "System Name: " $Item.SystemName
write-host "Total Cylinders: " $Item.TotalCylinders
write-host "Total Heads: " $Item.TotalHeads
write-host "Total Sectors: " $Item.TotalSectors
write-host "Total Tracks: " $Item.TotalTracks
write-host "Tracks Per Cylinder: " $Item.TracksPerCylinder
write-host
}
答案 2 :(得分:0)
谢谢瑞吉斯!这正是我想要的。
PS C:\Users\Administrator>
PS C:\Users\Administrator> $disk = (gwmi win32_DiskDrive -Property * | ?{$_.PnpDeviceID -eq 'SCSI\DISK&VEN_SANBLAZE&PROD_VLUN_P2T0L3\5&9BA739C&0&000503'})
PS C:\Users\Administrator> $PnpEntity = gwmi -query "ASSOCIATORS OF {$($Disk.__RELPATH)} where resultclass = Win32_PnpEntity"
PS C:\Users\Administrator> switch ($Disk.InterfaceType)
>> {
>> 'IDE'
>> {
>> $parentID = (gwmi -query "ASSOCIATORS OF {$($PnpEntity.__RELPATH)} where resultclass = Win32_IDEController").PnpDeviceID
>> break;
>> }
>>
>>
>> 'SCSI'
>> {
>> $parentID = (gwmi -query "ASSOCIATORS OF {$($PnpEntity.__RELPATH)} where resultclass = Win32_SCSIController").PnpDeviceID
>> break;
>> }
>>
>> 'USB'
>> {
>> $parentID = (gwmi -query "ASSOCIATORS OF {$($PnpEntity.__RELPATH)} where resultclass = Win32_USBController").PnpDeviceID
>> break;
>> }
>>
>> Default {}
>> }
PS C:\Users\Administrator> Write-host $parentID
PCI\VEN_10DF&DEV_E300&SUBSYS_E30010DF&REV_01\4&29553A89&0&0108
PS C:\Users\Administrator>
这匹配我的主持人发起人:
PCI\VEN_10DF&DEV_E300&SUBSYS_E30010DF&REV_01\4&29553a89&0&0108_0 200000109b17402c 100000109b17402c Fibre Channel