Get-TypeData
Získá rozšířená data typu v aktuální relaci.
Syntaxe
Get-TypeData
[[-TypeName] <String[]>]
[<CommonParameters>]
Description
Rutina Get-TypeData
získá v aktuální relaci data rozšířeného typu. To zahrnuje data typu přidaná do relace Types.ps1xml
souborem a daty dynamického typu, která byla přidána pomocí parametru rutiny Update-TypeData
.
Pomocí rozšířených dat typu, která Get-TypeData
vrací, můžete prozkoumat data typu v relaci a odeslat je do rutin Update-TypeData
a Remove-TypeData
.
Rozšířená data typu přidávají vlastnosti a metody do objektů v PowerShellu. Přidané vlastnosti a metody můžete použít stejným způsobem jako vlastnosti a metody definované v typu objektu. Při psaní skriptů však mějte na paměti, že přidané vlastnosti a metody nemusí být přítomny v každé relaci PowerShellu.
Další informace o Types.ps1xml
soubory naleznete v tématu about_Types.ps1xml. Další informace o dynamických typech dat, která Update-TypeData
rutina přidává, najdete v tématu Update-TypeData
.
Tato rutina byla zavedena ve Windows PowerShellu 3.0.
Příklady
Příklad 1: Získání všech dat rozšířeného typu
Tento příklad získá všechna rozšířená data typu v aktuální relaci.
Get-TypeData
Příklad 2: Získání dat typu podle názvu
Tento příklad získá všechna data typu v aktuální relaci, jejíž název je kvalifikovaný pomocí "System.IO".
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…
Příklad 3: Získání bloku skriptu, který vytvoří hodnotu vlastnosti
Tento příklad získá blok skriptu, který vytvoří hodnotu EventID vlastnost EventLogEntry objekty.
(Get-TypeData *EventLogEntry*).Members.EventID
GetScriptBlock SetScriptBlock IsHidden Name
-------------- -------------- -------- ----
$this.get_EventID() -band 0xFFFF False EventID
Příklad 4: Získání bloku skriptu, který definuje vlastnost pro zadaný objekt
Tento příklad získá blok skriptu, který definuje DateTime vlastnost System.DateTime objekty v PowerShellu.
(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()
}
Příkaz používá rutinu Get-TypeData
k získání rozšířených dat o typu System.DataTime. Příkaz získá vlastnost Members objektu TypeData.
Vlastnost Members obsahuje tabulku vlastností a metod definovaných daty rozšířeného typu. Každý klíč v tabulce hash Členů je vlastnost nebo název metody a každá hodnota je definice vlastnosti nebo hodnoty metody.
Příkaz získá klíč DateTime v Members a jeho GetScriptBlock hodnotu vlastnosti.
Výstup ukazuje blok skriptu, který vytvoří hodnotu vlastnosti DateTime každého objektu System.DateTime v PowerShellu.
Parametry
-TypeName
Určuje data typu jako pole pouze pro typy se zadanými názvy. Ve výchozím nastavení Get-TypeData
získá všechny typy v relaci.
Zadejte názvy typů nebo vzory názvů. Jsou vyžadována úplná jména nebo vzory názvů se zástupnými znaky, a to i pro typy v oboru názvů systému. Podporují se zástupné cardy a název parametru TypeName je volitelný. Názvy typů svislých razítek můžete také Get-TypeData
.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | True |
Vstupy
Řetězce obsahující názvy typů můžete generovat do této rutiny.
Výstupy
Poznámky
Get-TypeData
získá v aktuální relaci pouze data rozšířeného typu. Nezískáte rozšířená data typu, která jsou v počítači, ale nebyla přidána do aktuální relace, například rozšířené typy definované v modulech, které nebyly importovány do aktuální relace.