PowerShellのデフォルト設定では表示プロパティが4を超えるとTableからListフォーマットに変化する。
実行例)
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2}
Prop1 Prop2
----- -----
1 2
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2;Prop3=3}
Prop1 Prop2 Prop3
----- ----- -----
1 2 3
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2;Prop3=3;Prop4=4}
Prop1 Prop2 Prop3 Prop4
----- ----- ----- -----
1 2 3 4
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2;Prop3=3;Prop4=4;Prop5=5}
Prop1 : 1
Prop2 : 2
Prop3 : 3
Prop4 : 4
Prop5 : 5
独自のps1mxl
を作成し、Update-FormatData
することでこの設定に介入することができる。
# -PretendPathでも大丈夫ぽい
Update-FormatData -AppendPath .\sample.format.ps1xml
実行例)
PS C:\> Update-FormatData -AppendPath .\sample.format.ps1xml
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2}
Prop1 Prop2
----- -----
1 2
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2;Prop3=3}
Prop1 : 1
Prop2 : 2
Prop3 : 3
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2;Prop3=3;Prop4=4}
Prop1 : 1
Prop2 : 2
Prop3 : 3
Prop4 : 4
PS C:\> [PSCustomObject]@{Prop1=1;Prop2=2;Prop3=3;Prop4=4;Prop5=5}
Prop1 : 1
Prop2 : 2
Prop3 : 3
Prop4 : 4
Prop5 : 5