Freigeben über


Get-SCSMClassInstance

Ruft Klasseninstanzen ab.

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

Beschreibung

Das Get-SCSMClassInstance Cmdlet ruft Klasseninstanzen ab.

Beispiele

Beispiel 1: Abrufen von Computern nach NetBIOS-Name

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

Diese Befehle rufen Computer mithilfe der Kriterien NetbiosDomainName entspricht WOODGROVE. Die ersten Befehle definieren die Parameter, die dann im endgültigen Get-SCSMClassInstance Cmdlet verwendet werden.

Beispiel 2: Abrufen von Klasseninstanzen mithilfe eines Filters

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

Mit diesem Befehl werden Klasseninstanzobjekte aus der Dienst-Manager-Datenbank mithilfe eines Filters abgerufen. Beachten Sie, dass der Eigenschaftenname im Filter der genaue Name der Eigenschaft sein muss und dass die Groß-/Kleinschreibung beachtet wird.

Beispiel 3: Abrufen aller Computerobjekte

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

Mit diesen Befehlen werden alle Klasseninstanzobjekte vom Typ Computer aus der Dienst-Manager-Datenbank abgerufen.

Parameter

-Class

Gibt den Namen einer oder mehrerer abzurufenden Klassen an. Sie können ein ManagementPackClass--Objekt angeben, das vom Cmdlet Get-SCClass zurückgegeben wird.

Typ:Microsoft.EnterpriseManagement.Configuration.ManagementPackClass[]
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ComputerName

Gibt einen Computer an, mit dem eine Verbindung hergestellt werden soll. Der Computer muss den System Center Data Access-Dienst ausführen. Der Standardwert ist der Computer für die aktuelle Verwaltungsgruppenverbindung.

Gültige Formate umfassen einen NetBIOS-Namen, eine IP-Adresse oder einen vollqualifizierten Domänennamen (Fully Qualified Domain Name, FQDN). Geben Sie zum Angeben des lokalen Computers den Computernamen "localhost" oder einen Punkt (.) ein.

Typ:System.String[]
Position:Named
Standardwert:Localhost
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Credential

Gibt ein Benutzerkonto an, unter dem die Verwaltungsgruppenverbindung ausgeführt wird. Das Konto muss Zugriff auf den Server haben, der im ComputerName Parameter angegeben ist, wenn der Server angegeben ist. Der Standardwert ist der aktuelle Benutzer.

Sie können ein PSCredential--Objekt eingeben, das vom Cmdlet Get-Credential zurückgegeben wird.

Typ:System.Management.Automation.PSCredential
Position:Named
Standardwert:Current user context
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Criteria

Gibt ein Kriterienobjekt an, das den Satz von Klasseninstanzen einschränkt, die vom Verwaltungsserver zurückgegeben werden.

Typ:Microsoft.EnterpriseManagement.Common.EnterpriseManagementObjectCriteria
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-DisplayName

Gibt den Anzeigenamen der abzurufenden Klasseninstanz an.

Typ:System.String[]
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Filter

Filtert den Resultset. Die Syntax des Filters ist die <Eigenschaft> Operator <Wert>, wobei gültige Operatoren -eq, -ne, -gt, -ge, -lt, -le, -like und -notlike sind. Die Verwendung eines Filters ist effizient, da der Filter die Ergebnisse begrenzt, die vom Verwaltungsserver abgerufen werden, anstatt angewendet zu werden, nachdem die Ergebnisse an PowerShell zurückgegeben wurden.

Typ:System.String
Position:2
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Group

Gibt eine Instanz einer Gruppe an, die die abzurufenden Klasseninstanzen enthält.

Typ:Microsoft.EnterpriseManagement.Common.EnterpriseManagementObject[]
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Id

Gibt die ID der abzurufenden Klasseninstanzen an. Dies kann eine GUID oder eine Zeichenfolge sein, die in eine GUID konvertiert wird.

Typ:System.Guid[]
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Name

Gibt den Namen der abzurufenden Klasseninstanzen an.

Typ:System.String[]
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-SCSession

Gibt eine Verbindung mit einem Verwaltungsserver an. Der Standardwert ist die aktuelle Verwaltungsgruppenverbindung.

Sie können ein Verwaltungsgruppenverbindungsobjekt eingeben, das vom cmdlet Get-SCManagementGroupConnection zurückgegeben wird.

Typ:Microsoft.SystemCenter.Core.Connection.Connection[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

Microsoft.EnterpriseManagement.Configuration.ManagementPackClass

Sie können eine Klasse an den parameter Class des Cmdlets Get-SCSMClassInstance weiterleiten.

Ausgaben

EnterpriseManagementObject

Dieses Cmdlet generiert ein EnterpriseManagementObject#<Classtype>-Objekt.