次の方法で共有


Get-TypeData

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

構文

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

説明

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

を返すGet-TypeData拡張型データを使用して、セッション内の型データを調べて、 コマンドレットと Remove-TypeData コマンドレットにUpdate-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 ハッシュ テーブルの各キーは、プロパティ名またはメソッド名であり、各値は、プロパティ値またはメソッド値の定義です。

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

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

パラメーター

-TypeName

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

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

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

入力

String

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

出力

TypeData

メモ

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