Get-SCSMClassInstance

取得類別實例。

Syntax

Get-SCSMClassInstance
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-SCSMClassInstance
   [-Class] <ManagementPackClass[]>
   [[-Filter] <String>]
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-SCSMClassInstance
   [-DisplayName] <String[]>
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-SCSMClassInstance
   [-Name] <String[]>
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-SCSMClassInstance
   [-Group] <EnterpriseManagementObject[]>
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-SCSMClassInstance
   [-Id] <Guid[]>
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]
Get-SCSMClassInstance
   [-Criteria] <EnterpriseManagementObjectCriteria>
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [<CommonParameters>]

Description

Get-SCSMClassInstance Cmdlet 會擷取類別實例。

範例

範例 1:依 NetBIOS 名稱取得電腦

PS C:\>$MP = Get-SCManagementPack -name "Microsoft.Windows.Library"
PS C:\>$CriteriaFormat = '<Criteria 
>> xmlns="http://Microsoft.EnterpriseManagement.Core.Criteria/"><Reference 
>> Id="Microsoft.Windows.Library" Version="{0}" PublicKeyToken="{1}" 
>> Alias="myMP" 
>>/><Expression><SimpleExpression><ValueExpressionLeft><Property>$Target/Property[Type="myMP!Microsoft.Windows.Computer"]/NetbiosDomainName$</Property></ValueExpressionLeft><Operator>Equal</Operator><ValueExpressionRight><Value>IR2</Value></ValueExpressionRight></SimpleExpression></Expression></Criteria>'
PS C:\>$CriteriaType = "Microsoft.EnterpriseManagement.Common.EnterpriseManagementObjectCriteria"
PS C:\>$criteriaString = $criteriaFormat -f $MP.Version, $MP.KeyToken
PS C:\>$class = Get-SCClass -name "microsoft.windows.computer"
PS C:\>$criteria = new-object $CriteriaType $CriteriaString,$class,$class.ManagementGroup
PS C:\>Get-SCSMClassInstance -criteria $criteria

這些命令會使用 NetbiosDomainName 的準則等於 WOODGROVE來擷取電腦。 第一個命令會定義參數,然後用於最終 Get-SCSMClassInstance Cmdlet。

範例 2:使用篩選取得類別實例

PS C:\>Get-SCSMClassInstance -class $class -filter 'NetbiosDomainName -eq "WOODGROVE"'
PrincipalName                 ObjectStatus ActiveDirectorySite     NetBiosDomainName
-------------                 ------------ -------------------     -----------------
WIN-752HJBSX24M.woodgrove.com Active       Default-First-Site-Name WOODGROVE
JWT-SCDW.woodgrove.com        Active                               WOODGROVE

此命令會使用篩選,從Service Manager資料庫擷取類別實例物件。 請注意,篩選條件中的屬性名稱必須與屬性名稱完全相同,且區分大小寫。

範例 3:取得所有電腦物件

PS C:\>$class = Get-SCSMClass -name microsoft.windows.computer
PS C:\>Get-SCSMClassInstance -class $class|format-table PrincipalName,ObjectStatus,ActiveDirectorySite,NetbiosDomainName
PrincipalName                 ObjectStatus ActiveDirectorySite     NetbiosDomainName
-------------                 ------------ -------------------     -----------------
WIN-752HJBSX24M.woodgrove.com Active       Default-First-Site-Name WOODGROVE
JWT-SCDW.woodgrove.com        Active                               WOODGROVE

此命令會從 Service Manager 資料庫擷取 Computer 類型的所有類別實例物件。

參數

-Class

指定要擷取的一或多個類別的名稱。 您可以指定Get-SCClass Cmdlet 所傳回的ManagementPackClass物件。

Type:Microsoft.EnterpriseManagement.Configuration.ManagementPackClass[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ComputerName

指定要與其建立連線的電腦。 電腦必須執行 System Center 資料存取服務。 預設值是目前管理群組連線的電腦。

有效格式包括 NetBIOS 名稱、IP 位址或完整網域名稱 (FQDN)。 若要指定本機電腦,請輸入電腦名稱、"localhost" 或句點 (.)。

Type:System.String[]
Position:Named
Default value:Localhost
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

指定管理群組連線將在其下執行的使用者帳戶。 如果指定伺服器,帳戶必須能夠存取 ComputerName 參數中指定的伺服器。 預設值為目前使用者。

您可以輸入Get-Credential Cmdlet 所傳回的PSCredential物件。

Type:System.Management.Automation.PSCredential
Position:Named
Default value:Current user context
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Criteria

指定用於限制從管理伺服器傳回之類別執行個體集合的準則物件。

Type:Microsoft.EnterpriseManagement.Common.EnterpriseManagementObjectCriteria
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DisplayName

指定要擷取之類別執行個體的顯示名稱。

Type:System.String[]
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Filter

篩選結果集。 篩選的語法是 < 屬性 > 運算子 < 值 > ,其中有效運算子為 -eq、-ne、-gt、-ge、-lt、-le、-like 和 -notlike。 使用篩選是有效率的,因為篩選會限制從管理伺服器擷取的結果,而不是在結果傳回 PowerShell 之後套用。

Type:System.String
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Group

指定包含要擷取之類別執行個體的群組執行個體。

Type:Microsoft.EnterpriseManagement.Common.EnterpriseManagementObject[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Id

指定要擷取之類別實例的識別碼。 這可能是 GUID 或將轉換成 GUID 的字串。

Type:System.Guid[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

指定要擷取之類別執行個體的名稱。

Type:System.String[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SCSession

指定管理伺服器的連線。 預設值是目前的管理群組連線。

您可以輸入 Get-SCManagementGroupConnection Cmdlet 所傳回的管理群組連線物件。

Type:Microsoft.SystemCenter.Core.Connection.Connection[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

Microsoft.EnterpriseManagement.Configuration.ManagementPackClass

您可以使用管線將類別傳送至Get-SCSMClassInstance Cmdlet 的Class參數。

輸出

EnterpriseManagementObject

此 Cmdlet 會產生EnterpriseManagementObject# < classtype >物件。