更新代码:
我有以下代码。我希望将InputTable作为二维字符串数组传递给嵌套脚本,但我无法弄清楚如何从Get-Content(看起来像是一维数组)中获取它。
第一个脚本:
$InputTablePath=C:\Temp\test.csv
$InputTable = Get-Content $InputTablePath
$scriptPath = 'C:\Temp\nested_script.csv
$m = Get-Content $tablePath
$rows = $m.count
$cols = ($m[0].split(",")).count
$InputTable = New-Object 'string[,]' $rows,$cols
for ($i=0;$i -lt $rows; $i++){
for ($j=0;$j -lt $cols; $j++){
$InputTable[$i,$j]= ($m[$i].split(","))[$j]
}
}
$argumentlist = "-InputTable '{0}'" -f $array
Invoke-Expression "& `"$scriptPath`" $argumentList"
嵌套脚本:
Param(
[string[,]]$InputTable
)
$numberOfRows = $InputTable.GetLength(0)
$numberOfColumns = $InputTable.GetLength(1)
等...
我目前在最后一行收到索引越界错误。
非常感谢。