Arrays Powershell-多维数组问题

Arrays Powershell-多维数组问题,arrays,powershell,multidimensional-array,Arrays,Powershell,Multidimensional Array,我在多维数组中遇到了一些有趣的问题,这些问题对我来说毫无意义。我敢肯定,我只是误用了一些PS不具备的功能,或者期待这些功能。以下是我试图做的: $Packages = @() $Packages += @("program 1","c:\path\to\program.exe","/switch") $Packages += @("program 2","c:\path\to\program2.exe","/switch") foreach ($Package in $Packages) {

我在多维数组中遇到了一些有趣的问题,这些问题对我来说毫无意义。我敢肯定,我只是误用了一些PS不具备的功能,或者期待这些功能。以下是我试图做的:

$Packages = @()

$Packages += @("program 1","c:\path\to\program.exe","/switch")
$Packages += @("program 2","c:\path\to\program2.exe","/switch")

foreach ($Package in $Packages) {
    $Name, $Path, $Args = $Package
    Install-Program $Name $Path $Args
}
Install Program是我编写的一个函数,它检查包文件类型(目前与.msp、.msu、.msi和.exe一起使用),并让它尽可能安静地安装(显然不是所有的.exe安装程序都有一个无声开关,grumble)

问题似乎是,当我遍历$Packages数组时,它提取的$Package条目来自数组每行中的每个元素,即它返回

$Package=$Packages[0][0]
然后
$Package=$Packages[0][1]
等等

而不是

$Package=$Packages[0]
然后
$Package=$Packages[1]
等等


实现后者最简单的方法是什么?

使用一元数组运算符(
)在数组文本前面加上前缀,例如:
$Packages+=,@(“…”,“…”)
。。。错过了这个,我感到既恼火又愚蠢。非常感谢你。我需要调查这个奇怪的操作员。:)很乐意提供帮助:-)
关于_操作员的内容
应该是进入btw的任何人的必读内容