1

PowerShell ワークフローでサイズ n の配列が必要です

workflow hai{
   $arr=@(1,2)
   $a=@(0)*$arr.Count #array needed
   for ($iterator=0;$iterator -lt $arr.Count;$iterator+=1){
        $a[$iterator]=$arr[$iterator]
   }
}

これは行のエラーを示しています

$a[$iterator]=$arr[$iterator]

このように使用できます

workflow hai{
   $arr=@(1,2)
   $a=@()
   for ($iterator=0;$iterator -lt $arr.Count;$iterator+=1){
        $a+=$arr[$iterator]
   }
}

しかし、インデックスを使用して配列にアクセスする必要がある場合は異なります。ワークフローでこれを行う方法はありますか

4

1 に答える 1

2

ワークフローがインデクサーへの割り当てをサポートしていないため、このエラーが発生します。ワークフローのさまざまな制限については、この記事を参照してください。インラインスクリプトを使用して、必要なものを取得してみてください。

workflow hai{
   $arr = @(1,2)
   $a = inlinescript {
       $tmpArr = $using:arr
       $newArr = @(0)*$tmpArr.Count #array needed
       for ($iterator=0;$iterator -lt $newArr.Count;$iterator+=1){
           $newArr[$iterator] = $tmpArr[$iterator]
       }
       $newArr
   }
   $a
}
于 2015-06-27T17:16:38.920 に答える