私はNotePropertiesを持つオブジェクトのコレクションを持っています。これらのプロパティの1つは配列です。 ConvertTo-HTMLを使用するときに、このNotepropertyのメンバーを '[System.Object]'だけでなく簡単に表示する方法があります。Powershell:ConvertTo-HTMLに配列メンバーを表示
たとえば、「Computername」というプロパティと、実際にはそのコンピュータのすべてのディスクの配列である「Disks」というプロパティがあります。 ConvertTo-HTMLの出力は次のようになります。
Computername Disks
fs System.Object[]
dc1 System.Object[]
手動でHTML出力を作成せずに、「ディスク」のメンバーを表示する簡単な方法はありますか?
編集:
ディスク・オブジェクトが実際に3つの値(名前、容量と空き領域)も表示する必要がありましたワン。 [0] PowerShellのプロンプトで.Disks $コレクションの 出力は(ディスクカウントなどに応じて)次のようになります。
PS > $collection[0].Disks
Bezeichnung Kapazität (MB) Freier Speicher (MB)
----------- -------------- --------------------
C:\ 40963 23040 (56 %)
D:\ 184324 39024 (21 %)
E:\ 204805 103373 (50 %)
を私はコンピュータ名を示し、ツリーのようなものを考えていました最初にそのコンピュータのすべてのディスクの表を表示します。以下のようなもの(より美しいかもしれない;)):実際にあなたのオブジェクトを変更することなく、多分
Get-Foo | foreach { $_.Disks = $_.Disks -join ', ' } | ConvertTo-HTML
か::
Computername
fs
Bezeichnung Kapazität (MB) Freier Speicher (MB)
----------- -------------- --------------------
C:\ 40963 23040 (56 %)
D:\ 184324 39024 (21 %)
E:\ 204805 103373 (50 %)
dc1
お寄せいただきありがとうございます。申し訳ありませんが、私が見せたいディスクあたり3つ(またはそれ以上)の値があることを忘れてしまいました。私は最初にComputernameを表示するツリーと同じものを考え、その下にあるすべてのディスクのテーブルを考えました。 – wullxz
私はこの場合、ConvertTo-HTML以上のものが必要だと思います。私は自分でHTMLを構築することなくこれを行うことができるとは思わない。ただし、ConvertTo-HTMLを使用してディスクテーブルを作成することはできます。 – Joey