You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PowerShell获取外接USB硬盘的驱动器盘符?

获取外接USB硬盘的驱动器盘符(排除U盘)

可以通过CIM实例的关联关系,将Win32_DiskDrive(识别外接硬盘)、Win32_DiskPartition(磁盘分区)和Win32_LogicalDisk(逻辑盘符)串联起来,精准筛选出外接USB硬盘的盘符。

完整脚本

# 筛选出外接USB硬盘(通过MediaType区分,排除U盘)
$externalHardDrives = Get-CimInstance Win32_DiskDrive -Filter "MediaType='External hard disk media'"

# 遍历硬盘,关联分区与逻辑盘符
foreach ($diskDrive in $externalHardDrives) {
    # 获取当前硬盘对应的分区
    $partitions = Get-CimAssociatedInstance -InputObject $diskDrive -ResultClassName Win32_DiskPartition
    foreach ($partition in $partitions) {
        # 获取分区对应的逻辑盘符
        $logicalDisks = Get-CimAssociatedInstance -InputObject $partition -ResultClassName Win32_LogicalDisk
        foreach ($logicalDisk in $logicalDisks) {
            # 输出结构化信息
            [PSCustomObject]@{
                硬盘型号 = $diskDrive.Model
                序列号 = $diskDrive.SerialNumber
                驱动器盘符 = $logicalDisk.DeviceID
                容量(GB) = [math]::Round($logicalDisk.Size / 1GB, 2)
            }
        }
    }
}

关键说明

  1. 筛选外接硬盘:Win32_DiskDrive的MediaType属性中,外接硬盘通常标记为External hard disk media,而U盘一般是Removable media或USB Flash Drive,通过这个Filter直接排除U盘。
  2. 关联实例获取盘符:Win32_DiskDrive本身不存储盘符信息,需要通过CIM的关联类:
    • Win32_DiskDriveToDiskPartition:链接磁盘驱动器与分区
    • Win32_LogicalDiskToPartition:链接分区与逻辑盘符
      使用Get-CimAssociatedInstance命令可以快速获取这些关联对象。
  3. 兼容性优化:如果部分系统的MediaType描述不一致,可以改用以下Filter增强兼容性:
    $externalHardDrives = Get-CimInstance Win32_DiskDrive -Filter "InterfaceType='USB' AND MediaType LIKE '%hard disk%'"
    
    同时检查接口类型为USB,且媒体类型包含"hard disk",确保不会误判。

内容的提问来源于stack exchange,提问作者JGH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 09:35:00