まず、これが私の質問につながるので、まず、PowerShell で XML をかなり扱ったことがあること、および XML ファイルからカスタム オブジェクトの配列にすばやくデータを読み取る方法について言及することから始めます。たとえば、次の XML ファイルがあるとします。
<stuff>
<item name="Joe" age="32">
<info>something about him</info>
</item>
<item name="Sue" age="29">
<info>something about her</info>
</item>
<item name="Cat" age="12">
<info>something else</info>
</item>
</stuff>
そして、単純に読むと、次のようになります。
[xml]$myxml = Get-Content .\my.xml
次に、次のようにアイテムの配列を取得できます。
[array]$myitems = $myxml.stuff.Item
$myitems
name age info
---- --- ----
Joe 32 something about him
Sue 29 something about her
Cat 12 something else
だから、今私の質問:
カスタム オブジェクトの配列の同様の構造を作成し、ファイルを読み取らずにスクリプトで初期化するにはどうすればよいですか?
個々のオブジェクトを多数のループおよび/または多数の作成/初期化してから、一度に 1 つずつ配列に追加できます...
しかし、この作成/初期化をより簡単な方法で実行する方法があるはずです。ここで重要なのは、カスタム オブジェクトに 3 つ以上の要素があることです (そうでなければ、ハッシュを使用していたはずです)。
XML の大きな文字列を作成し、Select-XML を使用することも検討しましたが、正しい構文を取得できませんでした (それが適切な方法であったとしても)。