Invoke a second script with arguments from a script
Aha. This turned out to be a simple problem of there being spaces in the path to the script.
Changing the Invoke-Expression line to:
Invoke-Expression "& `"$scriptPath`" $argumentList"
...was enough to get it to kick off. Thanks to Neolisk for your help and feedback!
Invoke-Expression
should work perfectly, just make sure you are using it correctly. For your case it should look like this:
Invoke-Expression "$scriptPath $argumentList"
I tested this approach with Get-Service and seems to be working as expected.
Much simpler actually:
Method 1:
Invoke-Expression $scriptPath $argumentList
Method 2:
& $scriptPath $argumentList
Method 3:
$scriptPath $argumentList
If you have spaces in your scriptPath
, don't forget to escape them `"$scriptPath`"