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 ハッシュ テーブルの各キーは、プロパティ名またはメソッド名であり、各値は、プロパティ値またはメソッド値の定義です。
このコマンドは、Members のDateTime キーとそのGetScriptBlock プロパティ値を取得します。
出力には、PowerShell のすべての System.DateTime オブジェクトの DateTime プロパティの値を作成するスクリプト ブロックが表示されます。
パラメーター
-TypeName
指定した名前の型に対してのみ、型データを配列として指定します。 既定では、 Get-TypeData
はセッション内のすべての型を取得します。
型の名前または名前パターンを入力します。 システム名前空間の型の場合でも、完全な名前、またはワイルドカード文字を含む名前パターンが必要です。 ワイルドカードがサポートされており、パラメーター名 TypeName は省略可能です。 パイプ型の名前を Get-TypeData
することもできます。
型: | String[] |
配置: | 0 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | True |
入力
型名を含む文字列をこのコマンドレットにパイプできます。
出力
メモ
Get-TypeData
は、現在のセッションの拡張型データのみを取得します。 このコマンドレットは、モジュールに定義されている一方で現在のセッションにインポートされていない拡張型のように、コンピューター上に存在していて現在のセッションに追加されていない拡張型データは取得しません。
関連リンク
PowerShell