相关疑难解决方法(0)

PowerShell:如何初始化自定义对象数组

首先,因为这引出了我的问题,我首先要指出我在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>
Run Code Online (Sandbox Code Playgroud)

如果我简单地阅读它,就像这样:

[xml]$myxml = Get-Content .\my.xml
Run Code Online (Sandbox Code Playgroud)

然后我可以得到一个像我这样的项目数组:

[array]$myitems = $myxml.stuff.Item
$myitems

name   age  info
----   ---  ----
Joe    32   something about him
Sue    29   something about her
Cat    12   something else
Run Code Online (Sandbox Code Playgroud)

那么,现在我的问题是:

如何创建自定义对象数组的类似结构,并在我的脚本中初始化它们,而无需读取文件?

我可以做很多循环和/或大量创建/初始化单个对象,然后一次添加一个数组...

但似乎应该有一种方法以更简单的方式执行此创建/初始化.请注意,这里的关键是我的自定义对象有两个以上的元素(否则,我已经使用了哈希).

我甚至考虑过创建一个大的XML字符串,并使用Select-XML,但我只是无法正确使用语法(如果这是正确的方向,那就是正确的方向).

powershell pscustomobject

51
推荐指数
5
解决办法
13万
查看次数

标签 统计

powershell ×1

pscustomobject ×1