Get-CMDevice
获取 Configuration Manager 设备。
语法
Get-CMDevice
[-CollectionMember]
[-Fast]
[-Name <String>]
[-Resource]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Get-CMDevice
-Collection <IResultObject>
[-CollectionMember]
[-Fast]
[-Name <String>]
[-Resource]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Get-CMDevice
-CollectionId <String>
[-CollectionMember]
[-Fast]
[-Name <String>]
[-Resource]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Get-CMDevice
[-CollectionId <String>]
[-CollectionMember]
[-Fast]
[-Resource]
-ThreatId <String>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Get-CMDevice
[-CollectionId <String>]
[-CollectionMember]
[-Fast]
[-Resource]
-ThreatName <String>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Get-CMDevice
[-CollectionId <String>]
[-CollectionMember]
[-Fast]
-InputObject <IResultObject>
[-Resource]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Get-CMDevice
[-CollectionMember]
-CollectionName <String>
[-Fast]
[-Name <String>]
[-Resource]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Get-CMDevice
[-CollectionMember]
[-Fast]
[-Resource]
-ResourceId <Int32>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
说明
Get-CMDevice cmdlet 获取 Configuration Manager 设备。 默认情况下,它会查询 SMS_CM_RES_COLL_SMS00001 类。 可以使用 Resource 或 CollectionMember 参数更改查询类。 根据站点中基于角色的访问,可能需要使用以下其他参数之一。 例如,如果无权访问 SMS00001,则默认情况下,此 cmdlet 返回的结果为零。
注意
从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>
。 有关详细信息,请参阅 入门。
示例
示例 1:按集合 ID 获取设备
此命令获取设备集合中 ID 为 XYZ0004B 的所有设备对象。 它使用 Select-Object cmdlet 仅显示特定属性。
Get-CMDevice -CollectionID "XYZ0004B" | Select-Object Name, ClientVersion, DeviceOS, IsActive, LastActiveTime, LastClientCheckTime, LastDDR, LastHardwareScan, LastPolicyRequest
Name : DEVICE-LT3
ClientVersion : 5.00.9012.1020
DeviceOS : Microsoft Windows NT Workstation 10.0 (Tablet Edition)
IsActive : True
LastActiveTime : 10/1/2020 23:29:34
LastClientCheckTime : 9/8/2020 18:38:10
LastDDR : 9/30/2020 20:29:33
LastHardwareScan : 9/30/2020 22:24:22
LastPolicyRequest : 10/1/2020 23:29:34
Name : DEVICE-LT2
ClientVersion : 5.00.9030.1011
DeviceOS : Microsoft Windows NT Workstation 10.0 (Tablet Edition)
IsActive : True
LastActiveTime : 10/2/2020 00:31:54
LastClientCheckTime : 9/30/2020 23:06:10
LastDDR : 9/30/2020 19:44:46
LastHardwareScan : 9/30/2020 01:15:52
LastPolicyRequest : 10/2/2020 00:31:54
示例 2:按集合 ID 获取设备资源
此命令类似于第一个示例,但使用 -Resource 参数。 查询其他类时,它将返回类似数据的不同属性。
Get-CMDevice -CollectionID "XYZ0004B" -Resource | Select-Object Name, ClientVersion, OperatingSystemNameandVersion, Active, AgentName, AgentTime
Name : DEVICE-LT3
ClientVersion : 5.00.9012.1020
OperatingSystemNameandVersion : Microsoft Windows NT Workstation 10.0 (Tablet Edition)
Active : 1
AgentName : {SMS_AD_SYSTEM_DISCOVERY_AGENT, SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT,
MP_ClientRegistration, Heartbeat Discovery}
AgentTime : {2/28/2020 09:45:01, 10/2/2020 01:00:01, 9/21/2020 15:53:47, 9/30/2020 13:29:33}
Name : DEVICE-LT2
ClientVersion : 5.00.9030.1011
OperatingSystemNameandVersion : Microsoft Windows NT Workstation 10.0 (Tablet Edition)
Active : 1
AgentName : {SMS_AD_SYSTEM_DISCOVERY_AGENT, SMS_AD_SECURITY_GROUP_DISCOVERY_AGENT,
MP_ClientRegistration, Heartbeat Discovery}
AgentTime : {2/28/2020 09:45:01, 10/2/2020 01:00:01, 10/1/2020 14:03:56, 9/30/2020 12:44:46}
示例 3:获取特定设备的属性
此命令获取特定设备,并通过 Select-Object cmdlet 通过管道传递输出,以仅显示特定属性。 由于它使用 -Resource 参数,因此属性特定于该类。
Get-CMDevice -Name "DEVICE-LT2" -Resource | Select-Object Name, CPUType, DistinguishedName, HardwareID, IPAddresses
示例 4:获取不是客户端的设备
此命令使用 -Fast 参数获取所有没有延迟属性的设备。 它将列表筛选为仅不是客户端的设备。 它仅在最终列表中显示设备名称。
Get-CMDevice -Fast | Where-Object { $_.IsClient -eq $false } | Select-Object Name
示例 5:获取特定威胁名称的设备
此命令显示Microsoft Defender 检测到特定威胁的所有设备。 它仅显示设备的名称。
Get-CMDevice -ThreatName "Trojan:Win32/Wacatac.B!ml" | Select-Object Name
示例 6:获取具有任何检测到恶意软件的所有设备
此命令首先使用 Get-CMDetectedMalware cmdlet 来获取所有威胁。 然后,它会分析该列表,并显示具有恶意软件的设备的名称。
$allMalware = Get-CMDetectedMalware
foreach ( $malware in $allMalware ) { Get-CMDevice -InputObject $malware | Select-Object Name }
参数
-Collection
使用此参数可从设备集合对象获取所有设备。 若要获取此对象,请使用 Get-CMDeviceCollection cmdlet。
类型: | IResultObject |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-CollectionId
指定设备集合的 ID。 例如,XYZ0004B
。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-CollectionMember
添加此参数以查询 SMS_R_UnknownSystem 和 SMS_R_System 类以获取设备信息。 这些类可能受基于角色的访问的限制。 这些类包含更详细的计算机信息。
类型: | SwitchParameter |
别名: | CollectionMemberInstance |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CollectionName
指定设备集合的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-DisableWildcardHandling
此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Fast
添加此参数以不自动刷新延迟属性。 延迟属性包含检索效率相对较低的值。 获取这些属性可能会导致额外的网络流量并降低 cmdlet 性能。
如果不使用此参数,cmdlet 将显示警告。 若要禁用此警告,请设置 $CMPSSuppressFastNotUsedCheck = $true
。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ForceWildcardHandling
此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-InputObject
指定检测到的恶意软件对象。 若要获取此对象,请使用 Get-CMDetectedMalware cmdlet。
类型: | IResultObject |
别名: | Threat |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-Name
指定设备的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | True |
-Resource
添加此参数以查询 SMS_Resource 类以获取设备信息。 此类不应受到基于角色的访问的限制。 输出与 Get-CMResource cmdlet 相同。 此输出具有设备的最小属性。 有关更详细的属性,请不要添加此参数,也不要使用 CollectionMember 参数。
类型: | SwitchParameter |
别名: | ResourceInstance |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ResourceId
指定设备的资源 ID。 例如,16780010
。
类型: | Int32 |
别名: | Id, DeviceId |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ThreatId
使用此参数按 ID 筛选返回给具有特定恶意软件的设备。 例如,2147735505
。 若要获取此威胁 ID,请使用 Get-CMDetectedMalware cmdlet。
类型: | String |
别名: | ThreatNameId |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ThreatName
使用此参数可按名称筛选返回给具有特定恶意软件的设备。 例如,Trojan:Win32/Wacatac.B!ml
。 若要获取此威胁名称,请使用 Get-CMDetectedMalware cmdlet。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
输入
Microsoft.ConfigurationManagement.ManagementProvider.IResultObject
输出
IResultObject[]
IResultObject
备注
有关此返回对象及其属性的详细信息,请参阅 SMS_CombinedDeviceResources服务器 WMI 类。