Get-CMDevice

取得Configuration Manager裝置。

Syntax

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>]

Description

Get-CMDevice Cmdlet 會取得Configuration Manager裝置。 根據預設,它會查詢 SMS_CM_RES_COLL_SMS00001 類別。 您可以使用 ResourceCollectionMember 參數來變更查詢類別。 根據您在網站中的角色型存取,您可能需要使用其中一個其他參數。 例如,如果您沒有 SMS00001 的存取權,則根據預設,此 Cmdlet 會傳回零個結果。

注意事項

從Configuration Manager月臺磁片磁碟機執行 Configuration Manager Cmdlet,例如 PS XYZ:\> 。 如需詳細資訊,請 參閱開始使用

範例

範例 1:依集合識別碼取得裝置

此命令會取得裝置集合中識別碼為 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:依集合識別碼取得裝置資源

此命令類似于第一個範例,但使用 -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。

Type:IResultObject
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CollectionId

指定裝置集合的識別碼。 例如,XYZ0004B

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CollectionMember

新增此參數以查詢 裝置資訊的SMS_R_UnknownSystemSMS_R_System 類別。 這些類別可能會受到角色型存取的限制。 這些類別包含更詳細的機器資訊。

Type:SwitchParameter
Aliases:CollectionMemberInstance
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CollectionName

指定裝置集合的名稱。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DisableWildcardHandling

此參數會將萬用字元視為常值字元值。 您無法將其與 ForceWildcardHandling結合。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Fast

新增此參數,不自動重新整理延遲屬性。 延遲屬性包含相對沒有效率的擷取值。 取得這些屬性可能會導致額外的網路流量,並降低 Cmdlet 效能。

如果您未使用此參數,Cmdlet 會顯示警告。 若要停用此警告,請設定 $CMPSSuppressFastNotUsedCheck = $true

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForceWildcardHandling

此參數會處理萬用字元,並可能導致非預期的行為 (不建議) 。 您無法將其與 DisableWildcardHandling結合。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

指定偵測到的惡意程式碼物件。 若要取得此物件,請使用 Get-CMDetectedMalware Cmdlet。

Type:IResultObject
Aliases:Threat
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

指定裝置的名稱。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Resource

新增此參數以查詢 裝置資訊的SMS_Resource 類別。 此類別不應受到角色型存取的限制。 輸出與 Get-CMResource Cmdlet 相同。 此輸出具有裝置的最小屬性。 如需更詳細的屬性,請勿新增此參數,或使用 CollectionMember 參數。

Type:SwitchParameter
Aliases:ResourceInstance
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceId

指定裝置的資源識別碼。 例如,16780010

Type:Int32
Aliases:Id, DeviceId
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ThreatId

使用此參數,依識別碼篩選其傳回給具有特定惡意程式碼之裝置的裝置。 例如,2147735505。 若要取得此威脅識別碼,請使用 Get-CMDetectedMalware Cmdlet。

Type:String
Aliases:ThreatNameId
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ThreatName

使用此參數,依名稱篩選其傳回給具有特定惡意程式碼之裝置的裝置。 例如,Trojan:Win32/Wacatac.B!ml。 若要取得此威脅名稱,請使用 Get-CMDetectedMalware Cmdlet。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

輸入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

輸出

IResultObject[]

IResultObject

備註

如需此傳回物件及其屬性的詳細資訊,請 參閱SMS_CombinedDeviceResources伺服器 WMI 類別