Get-TypeData

Ruft die erweiterten Typdaten in der aktuellen Sitzung ab.

Syntax

Get-TypeData
   [[-TypeName] <String[]>]
   [<CommonParameters>]

Beschreibung

Das Get-TypeData Cmdlet ruft die Daten des erweiterten Typs in der aktuellen Sitzung ab. Dies umfasst Typdaten, die der Sitzung nach Types.ps1xml einer Datei hinzugefügt wurden, und dynamische Typdaten, die mithilfe des Parameters des Update-TypeData Cmdlets hinzugefügt wurden.

Sie können die zurückgegebenen Daten des erweiterten Typs verwenden, Get-TypeData um die Typdaten in der Sitzung zu untersuchen und an die Update-TypeData Cmdlets und Remove-TypeData zu senden.

Daten vom erweiterten Typ fügen Objekten in PowerShell Eigenschaften und Methoden hinzu. Sie können die hinzugefügten Eigenschaften und Methoden auf die gleiche Weise wie die im Objekttyp definierten Eigenschaften und Methoden verwenden. Beachten Sie beim Schreiben von Skripts jedoch, dass die hinzugefügten Eigenschaften und Methoden möglicherweise nicht in jeder PowerShell-Sitzung vorhanden sind.

Weitere Informationen zu Types.ps1xml Dateien finden Sie unter about_Types.ps1xml. Weitere Informationen zu Daten vom dynamischen Typ, die das Update-TypeData Cmdlet hinzufügt, finden Sie unter Update-TypeData.

Dieses Cmdlet wurde in Windows PowerShell 3.0 eingeführt.

Beispiele

Beispiel 1: Abrufen aller Erweiterten Typdaten

In diesem Beispiel werden alle Daten vom erweiterten Typ in der aktuellen Sitzung abgerufen.

Get-TypeData

Beispiel 2: Abrufen von Typdaten nach Name

In diesem Beispiel werden alle Typdaten in der aktuellen Sitzung abgerufen, deren Name mit "System.IO" qualifiziert ist.

Get-TypeData -TypeName System.IO.*

TypeName                Members
--------                -------
System.IO.DirectoryInfo {[Mode, System.Management.Automation.Runspaces.CodePropert…
System.IO.FileInfo      {[Mode, System.Management.Automation.Runspaces.CodePropert…

Beispiel 3: Abrufen des Skriptblocks, der einen Eigenschaftswert erstellt

In diesem Beispiel wird der Skriptblock abgerufen, der den Wert der EventID-Eigenschaft von EventLogEntry-Objekten erstellt.

(Get-TypeData *EventLogEntry*).Members.EventID

GetScriptBlock                     SetScriptBlock     IsHidden Name
--------------                     --------------     -------- ----
$this.get_EventID() -band 0xFFFF                         False EventID

Beispiel 4: Abrufen des Skriptblocks, der eine Eigenschaft für ein angegebenes Objekt definiert

In diesem Beispiel wird der Skriptblock abgerufen, der die DateTime-Eigenschaft von System.DateTime-Objekten in PowerShell definiert.

(Get-TypeData -TypeName System.DateTime).Members["DateTime"].GetScriptBlock
if ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq  "Date") {
    "{0}" -f $this.ToLongDateString()
}
elseif ((& { Set-StrictMode -Version 1; $this.DisplayHint }) -ieq "Time") {
    "{0}" -f  $this.ToLongTimeString()
}
else {
    "{0} {1}" -f $this.ToLongDateString(), $this.ToLongTimeString()
}

Der Befehl verwendet das Get-TypeData Cmdlet, um die Erweiterten Typdaten für den System.DataTime-Typ abzurufen. Mit dem Befehl wird die Members-Eigenschaft des TypeData-Objekts abgerufen.

Die Members-Eigenschaft enthält eine Hashtabelle mit Eigenschaften und Methoden, die durch Daten vom erweiterten Typ definiert werden. Jeder Schlüssel in der Hashtabelle „Members“ ist ein Eigenschaften- oder Methodenname, und jeder Wert ist die Definition des Eigenschaften- oder Methodenwerts.

Der Befehl ruft den DateTime-Schlüssel in Members und den Wert der GetScriptBlock-Eigenschaft ab.

Die Ausgabe zeigt den Skriptblock, der den Wert der DateTime-Eigenschaft jedes System.DateTime-Objekts in PowerShell erstellt.

Parameter

-TypeName

Gibt Typdaten nur als Array für die Typen mit den angegebenen Namen an. Ruft standardmäßig Get-TypeData alle Typen in der Sitzung ab.

Geben Sie Namen oder ein Namensmuster ein. Vollständige Namen oder Namensmuster mit Feldhalterzeichen sind auch für Typen im Systemnamespace erforderlich. Feldhalter werden unterstützt, und der Parametername TypeName ist optional. Sie können auch Typnamen an pipen Get-TypeData.

Type:String[]
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:True

Eingaben

String

Sie können Zeichenfolgen, die Typnamen enthalten, an dieses Cmdlet übergeben.

Ausgaben

TypeData

Hinweise

Get-TypeData ruft nur die Erweiterten Typdaten in der aktuellen Sitzung ab. Es ruft keine erweiterten Typdaten ab, die sich auf dem Computer befinden, aber nicht der aktuellen Sitzung hinzugefügt wurden, wie z. B. erweiterte Typen, die in Modulen definiert und nicht in die aktuelle Sitzung importiert wurden.