如何将数组作为参数传递给另一个脚本? (开始工作)

问题描述 投票:0回答:1

由于某种原因,我似乎无法将字符串数组作为参数传递给脚本块。我在这里做错了什么?

我的脚本是从另一个脚本调用的:

param(
    [parameter(Mandatory=$true)]
    [string[]]$myarr
)

foreach ($elem in $myarr){
    $elem
}

我从另一个脚本中将其称为

 $myarr = @("111", "222")
 start-job -filepath myscript.ps1 -arg $myarr

我只得到数组中的第一项 - “111”。

arrays powershell parameters arguments
1个回答
88
投票

尝试如下:

start-job -filepath myscript.ps1 -arg (,$myarr)

-ArgumentList
接受参数列表/数组。因此,当您给出
-arg $myarr
时,就好像您将数组的元素作为参数传递。因此,您必须强制 PowerShell 将其视为单个参数,即数组。

© www.soinside.com 2019 - 2024. All rights reserved.