Pour une raison quelconque, il semble que je ne puisse pas passer un tableau de chaînes en tant que paramètre dans scriptblock. Qu'est-ce que je fais ici mal?
Mon script qui s'appelle d'un autre script:
param(
[parameter(Mandatory=$true)]
[string[]]$myarr
)
foreach ($elem in $myarr){
$elem
}
Je l'appelle d'un autre script comme
$myarr = @("111", "222")
start-job -filepath myscript.ps1 -arg $myarr
Je n'ai que le premier élément du tableau - "111".
Essayez-le comme ci-dessous:
start-job -filepath myscript.ps1 -arg (,$myarr)
Le -ArgumentList
prend une liste/un tableau d'arguments. Alors quand tu donnes -arg $myarr
, c'est comme si vous passiez les éléments du tableau comme arguments. Vous devez donc forcer PowerShell à le traiter comme un argument unique qui est un tableau.