如何使用PowerShell列出设备所有根目录
PowerShell 查询设备所有根目录的实现方式
原生tree属于系统遗留命令,默认仅会渲染当前工作目录所在驱动器的树状结构,不会自动枚举设备上其他挂载的根路径,可直接使用以下PowerShell命令完成全量根目录查询:
基础查询(覆盖绝大多数日常场景)
执行以下命令可以列出所有被PowerShell文件系统提供程序识别的根路径,包含本地硬盘分区、移动存储、映射网络驱动器等常规挂载对象:Get-PSDrive -PSProvider FileSystem | Select-Object -ExpandProperty Root执行后会直接返回类似
C:\、D:\、Z:\(网络映射盘)格式的根路径列表。系统层逻辑驱动器查询
如果需要同时获取根目录对应的卷标、分区容量、剩余空间等附加信息,可以通过CIM接口查询系统记录的逻辑磁盘信息:Get-CimInstance Win32_LogicalDisk | Select-Object DeviceID, VolumeName, Size, FreeSpace返回结果中
DeviceID字段拼接\即为对应根目录路径。全量挂载点查询(含无盘符挂载卷)
若设备上存在未分配独立盘符、直接挂载到NTFS文件夹路径下的卷,前两种命令可能存在遗漏,可执行以下命令枚举所有卷的访问根路径:Get-Volume | Get-Partition | Get-PartitionAccessPath | Select-Object -ExpandProperty AccessPath | Where-Object { $_ -match '\\$' }该命令会同时返回带盘符的根路径、无盘符NTFS文件夹挂载点两类根目录。
以上命令均支持普通用户权限直接运行,无需提升管理员权限。
内容的提问来源于stack exchange,提问作者Pierre-olivier Gendraud
相关产品推荐
相关产品推荐

