Get-TypeData

現在のセッションで、拡張型データを取得します。

構文

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

説明

コマンドレットは Get-TypeData 、現在のセッションの拡張型データを取得します。 これには、ファイルによって Types.ps1xml セッションに追加された型データと、コマンドレットのパラメーターを使用して追加された動的な型データが Update-TypeData 含まれます。

返される Get-TypeData 拡張型データを使用して、セッション内の型データを調べ、それを Update-TypeData コマンドレットに Remove-TypeData 送信できます。

拡張型データは、PowerShell のオブジェクトにプロパティとメソッドを追加します。 その追加されたプロパティとメソッドを、オブジェクトの型によって決定されるプロパティとメソッドを使用するのと同じ方法で使用することができます。 ただし、スクリプトを記述するときは、追加されたプロパティとメソッドがすべての PowerShell セッションに存在しない可能性があることに注意してください。

ファイルのTypes.ps1xml詳細については、「about_Types.ps1xml」を参照してください。 コマンドレットによって追加される動的な型データの詳細については、次を Update-TypeData 参照してください Update-TypeData

このコマンドレットは、Windows PowerShell 3.0 で導入されました。

例 1: すべての拡張型データを取得する

この例では、現在のセッションのすべての拡張型データを取得します。

Get-TypeData

例 2: 名前で型データを取得する

この例では、名前が "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…

例 3: プロパティ値を作成するスクリプト ブロックを取得する

この例では、EventLogEntry オブジェクトの EventID プロパティの値を作成するスクリプト ブロックを取得します。

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

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

例 4: 指定したオブジェクトのプロパティを定義するスクリプト ブロックを取得する

この例では、PowerShell で System.DateTime オブジェクトの DateTime プロパティを定義するスクリプト ブロックを取得します。

(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()
}

このコマンドでは、コマンドレットをGet-TypeData使用して System.DataTime 型の拡張型データを取得します。 このコマンドは、TypeData オブジェクトの Members プロパティを取得します。

Members プロパティには、拡張型データによって定義されるプロパティとメソッドのハッシュ テーブルが含まれています。 Members ハッシュ テーブルの各キーは、プロパティ名またはメソッド名であり、各値は、プロパティ値またはメソッド値の定義です。

このコマンドは、MembersDateTime キーとその GetScriptBlock プロパティ値を取得します。

出力には、PowerShell のすべての System.DateTime オブジェクトの DateTime プロパティの値を作成するスクリプト ブロックが表示されます。

パラメーター

-TypeName

指定した名前の型に対してのみ、型データを配列として指定します。 既定では、 Get-TypeData セッション内のすべての型を取得します。

型の名前または名前パターンを入力します。 システム名前空間の型の場合でも、フル ネーム、またはワイルドカード文字の名前パターンが必要です。 Wildカード がサポートされており、パラメーター名 TypeName は省略可能です。 パイプの型名を次にすることもできます Get-TypeData

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

入力

String

型名を含む文字列をこのコマンドレットにパイプできます。

出力

TypeData

メモ

Get-TypeData は、現在のセッションの拡張型データのみを取得します。 このコマンドレットは、モジュールに定義されている一方で現在のセッションにインポートされていない拡張型のように、コンピューター上に存在していて現在のセッションに追加されていない拡張型データは取得しません。