You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

PowerShell远程获取磁盘空间及get-WmiObject命令remotecomputer参数问询

使用PowerShell从远程计算机检索磁盘空间及相关参数解析

一、用PowerShell检索远程计算机磁盘空间的两种常用方法

1. 传统WMI方式(Get-WmiObject

这是比较经典的命令,适合兼容旧版PowerShell环境。你需要确保执行命令的账号拥有目标远程计算机的管理员权限,且远程主机开启了WMI服务(默认是启用的)。

示例命令:

# 查询单台远程计算机的磁盘信息,格式化输出易读的磁盘数据
Get-WmiObject win32_logicaldisk -Computername remotecomputer | Select-Object DeviceID, VolumeName, @{Name="TotalSize(GB)";Expression={[math]::Round($_.Size/1GB,2)}}, @{Name="FreeSpace(GB)";Expression={[math]::Round($_.FreeSpace/1GB,2)}}, @{Name="FreePercent";Expression={[math]::Round(($_.FreeSpace/$_.Size)*100,2)}}

# 批量查询多台计算机,直接传入多个名称/IP即可
Get-WmiObject win32_logicaldisk -Computername PC01, PC02, 192.168.1.50 | Select-Object PSComputerName, DeviceID, FreePercent

上面的命令会把原始字节单位的磁盘数据转换成更直观的GB格式,同时计算可用空间百分比,方便快速查看磁盘使用率。

2. 推荐的CIM方式(Get-CimInstance

微软现在更推荐使用CIM相关cmdlet,它比WMI cmdlet更高效,支持更多现代特性(比如复用CIM会话减少连接开销),语法也更统一。

示例命令:

# 单台远程计算机查询
Get-CimInstance Win32_LogicalDisk -ComputerName remotecomputer | Select-Object DeviceID, VolumeName, @{Name="TotalSize(GB)";Expression={[math]::Round($_.Size/1GB,2)}}, @{Name="FreeSpace(GB)";Expression={[math]::Round($_.FreeSpace/1GB,2)}}, @{Name="FreePercent";Expression={[math]::Round(($_.FreeSpace/$_.Size)*100,2)}}

# 批量查询时用CIM会话提升效率
$session = New-CimSession -ComputerName PC01, PC02
Get-CimInstance Win32_LogicalDisk -CimSession $session | Select-Object PSComputerName, DeviceID, FreePercent
Remove-CimSession $session

二、-Computername remotecomputer参数详解

  1. 参数核心含义
    -ComputernameGet-WmiObject(以及Get-CimInstance)的核心参数之一,用来指定你要查询的目标远程计算机。它支持多种输入形式:

    • 单个计算机名称(比如DESKTOP-XYZ789
    • 单个IP地址(比如10.0.0.20
    • 多个计算机名称/IP的数组(比如PC01, 10.0.0.21
    • 本地文本文件的路径(比如C:\computers.txt
  2. 文本文件的内容要求
    当你把参数值设为文本文件路径时,文件里需要每行存储一个远程计算机的标识,支持的格式包括:

    • 计算机NetBIOS名称(比如Server01
    • 计算机的IP地址(比如192.168.0.10
    • 完全限定域名(比如server01.yourdomain.com

举个文件内容的示例:

Server01
192.168.0.10
DESKTOP-ABC123
server02.yourdomain.com

注意:每行只能有一个条目,不要添加多余的空格、逗号或注释,否则命令可能解析失败。


额外注意事项

  • 执行命令的用户必须拥有目标远程计算机的管理员权限,否则会返回权限不足的错误。
  • 远程计算机需要开启Windows Management Instrumentation (Winmgmt)服务,且防火墙允许WMI通信(默认规则允许域内主机访问,工作组环境可能需要手动配置)。

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

火山引擎 最新活动