コマンドレット、関数、スクリプトによって返されるオブジェクトの表示形式は、書式設定ファイル (format.ps1xml
ファイル) を使用して定義されます。 これらのファイルのいくつかは、Windows PowerShell コマンドレットによって返されるオブジェクトの既定の表示形式を定義するために、Windows PowerShell によって提供されます。 ただし、独自のカスタム書式設定ファイルを作成して、既定の表示形式を上書きしたり、独自のコマンドによって返されるオブジェクトの表示を定義したりすることもできます。
Windows PowerShell では、これらの書式設定ファイル内のデータを使用して、表示される内容とデータの書式設定方法を決定します。 表示されるデータには、オブジェクトのプロパティやスクリプト ブロックの値を含めることができます。 スクリプト ブロックは、オブジェクトのプロパティから直接使用できない値を表示する場合に使用されます。 たとえば、オブジェクトの 2 つのプロパティの値を追加し、合計を個別のデータとして表示することができます。 独自の書式設定ファイルを記述する場合は、表示するオブジェクトの ビュー を定義する必要があります。 オブジェクトごとに 1 つのビューを定義することも、複数のオブジェクトに対して 1 つのビューを定義することも、同じオブジェクトに対して複数のビューを定義することもできます。 定義できるビューの数に制限はありません。
重要
書式設定ファイルは、パイプラインに返されるオブジェクトの要素を決定しません。 オブジェクトがパイプラインに返されると、そのオブジェクトのすべてのメンバーを使用できます。
ビューの書式設定
書式設定ビューでは、オブジェクトをテーブル形式、リスト形式、ワイド形式、およびカスタム形式で表示できます。 ほとんどの場合、各書式設定定義は、ビューを記述する一連の XML タグによって記述されます。 各ビューには、ビューの名前、ビューを使用するオブジェクト、およびビューの要素 (テーブル ビューの列と行の情報など) が含まれます。
次のビューを使用できます。
テーブル ビュー 1 つ以上の列のオブジェクトまたはスクリプト ブロック値のプロパティを一覧表示します。 各列は、オブジェクトのプロパティまたはスクリプト ブロック値を表します。 オブジェクトのすべてのプロパティ、オブジェクトのプロパティのサブセット、またはプロパティとスクリプト ブロック値の組み合わせを表示するテーブル ビューを定義できます。 テーブルの各行は、返されたオブジェクトを表します。 このビューの詳細については、「テーブル ビューの をする」を参照してください。
リスト ビュー 1 つの列のオブジェクトまたはスクリプト ブロック値のプロパティを一覧表示します。 リストの各行には、オプションのラベルまたはプロパティ名の後にプロパティまたはスクリプト ブロックの値が表示されます。 このビューの詳細については、「リスト ビューの をする」を参照してください。
ワイド ビュー 1 つまたは複数の列のオブジェクトまたはスクリプト ブロック値の 1 つのプロパティを一覧表示します。 このビューのラベルまたはヘッダーはありません。 このビューの詳細については、「ワイド ビュー」を参照してください。
カスタム ビュー: テーブル ビュー、リスト ビュー、またはワイド ビューの厳格な構造に準拠しないオブジェクト プロパティまたはスクリプト ブロック値のカスタマイズ可能なビューが表示されます。 スタンドアロンのカスタム ビューを定義することも、テーブル ビューやリスト ビューなど、別のビューで使用されるカスタム ビューを定義することもできます。 このビューの詳細については、「カスタム ビュー 参照してください。
XML 要素の表示
次の例は、2 つの列を含むテーブル ビューの定義に使用される XML タグを示しています。
ViewDefinitions 要素は、書式設定ファイルで定義されているすべてのビューのコンテナー要素です。
View 要素は、特定のテーブル、リスト、ワイド、またはカスタム ビューを定義します。 各ビュー内で、Name 要素はビューの名前を指定し、ViewSelectedBy 要素はビューを使用するオブジェクトを定義し、異なるコントロール要素 (TableControl
要素など) はビューの形式を定義します。
ViewDefinitions
<View>
<Name>Name of View</Name>
<ViewSelectedBy>
<TypeName>Object to display using this view</TypeName>
<TypeName>Object to display using this view</TypeName>
</ViewSelectedBy>
<TableControl>
<TableHeaders>
<TableColumnHeader>
<Width></Width>
</TableColumnHeader>
<TableColumnHeader>
<Width></Width>
</TableColumnHeader>
</TableHeaders>
<TableRowEntries>
<TableRowEntry>
<TableColumnItems>
<TableColumnItem>
<PropertyName>Header for column 1</PropertyName>
</TableColumnItem>
<TableColumnItem>
<PropertyName>Header for column 2</PropertyName>
</TableColumnItem>
</TableColumnItems>
</TableRowEntry>
</TableRowEntries>
</TableControl)
</View>
</ViewDefinitions>
こちらもご覧ください
テーブル ビュー の
カスタム ビュー を する
PowerShell