检索特定驱动器数据 - Get-WmiObject Win32_logicaldisk
Retrieve specific drive data - Get-WmiObject Win32_logicaldisk
我正在尝试使用 Get-WmiObject 检索特定驱动器的可用空间。
在我的机器上使用 Get-WmiObject Win32_logicaldisk returns 以下内容:
PS C:\Users\Julian\Desktop\Tools\Powershell> Get-WmiObject Win32_logicaldisk | Select-Object DeviceID, FreeSpace
DeviceID FreeSpace
-------- ---------
C: 47114498048
S: 9963356160
Z: 985061974016
我想根据我指定的驱动器盘符 (DeviceID) 专门请求 FreeSpace,但是我不确定如何操作,因为我对 powershell 还很陌生。任何帮助将不胜感激。
使用-Filter
参数过滤源对象:
PS> Get-WmiObject Win32_logicaldisk -Filter 'DeviceId = "C:"' | Select-Object DeviceID, FreeSpace
DeviceID FreeSpace
-------- ---------
C: 14188314624
过滤器表达式 'DeviceId = "C:"'
本质上是 WQL 语句的 WHERE
子句。
但是请注意,*-Cim-*
cmdlet 已取代 PSv3+ 中的 *-Wmi*
cmdlet。
幸运的是,WQL 是 CQL (the CIM Query Language) 的一个实现,因此可以使用相同的过滤器:
PS> Get-CimInstance Win32_logicaldisk -Filter 'DeviceId = "C:"' | Select-Object DeviceID, FreeSpace
DeviceID FreeSpace
-------- ---------
C: 14188314624
我正在尝试使用 Get-WmiObject 检索特定驱动器的可用空间。
在我的机器上使用 Get-WmiObject Win32_logicaldisk returns 以下内容:
PS C:\Users\Julian\Desktop\Tools\Powershell> Get-WmiObject Win32_logicaldisk | Select-Object DeviceID, FreeSpace
DeviceID FreeSpace
-------- ---------
C: 47114498048
S: 9963356160
Z: 985061974016
我想根据我指定的驱动器盘符 (DeviceID) 专门请求 FreeSpace,但是我不确定如何操作,因为我对 powershell 还很陌生。任何帮助将不胜感激。
使用-Filter
参数过滤源对象:
PS> Get-WmiObject Win32_logicaldisk -Filter 'DeviceId = "C:"' | Select-Object DeviceID, FreeSpace
DeviceID FreeSpace
-------- ---------
C: 14188314624
过滤器表达式 'DeviceId = "C:"'
本质上是 WQL 语句的 WHERE
子句。
但是请注意,*-Cim-*
cmdlet 已取代 PSv3+ 中的 *-Wmi*
cmdlet。
幸运的是,WQL 是 CQL (the CIM Query Language) 的一个实现,因此可以使用相同的过滤器:
PS> Get-CimInstance Win32_logicaldisk -Filter 'DeviceId = "C:"' | Select-Object DeviceID, FreeSpace
DeviceID FreeSpace
-------- ---------
C: 14188314624