Run script from command line and pass String array
So basically I need to run the ps1 script from the command line and pass my custom arguments to my script. My script is expecting a String array, but when I run the command, I get an error that the positional parameter cannot be found that takes the argument 'X1'
This is my command line:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy RemoteSigned -NoProfile -NonInteractive -File "C:\Program Files\MSBuild\MyScript.ps1" -builds "X1" "X2" "X3" "X4"
As I understand it, it knows what to do with the first parameter "X1" but not the second, and so it crashes? Any ideas?
+3
source to share
2 answers
I can't explain why it -file
doesn't work, but this setting has other known issues. When you use it, you are not getting the correct PowerShell exit code. Usage -command
works:
Powershell.exe -ExecutionPolicy RemoteSigned -NoProfile -NonInteractive -Command "& {& 'C:\Program Files\MSBuild\myscript.ps1' -builds x1,x2,x3}"
+2
source to share