这是一个新问题,源自之前的帖子:
Run Powershell script from inside other Powershell script with dynamic redirection to file
我正在跑步:
$logStreams = "2>&1>"
$command = '"C:\myscript.ps1" $_logStreams "C:\outputlog.txt"'
iex "& $command"
我发现使用iex "& $ command"
调用我的脚本与使用Powershel -File "C:\myscript.ps1"
调用脚本不同。
Myscript.ps1调用一个函数Download(带有一些参数),它创建并填充文件$ File1,然后是第二个文件$ File2(它也会生成前两个文件中的第三个文件)。
然后,在调用Download()之后的myscript.ps1的下一行中,我调用另一个函数Cleanup($ File1,$ File2),删除$ File1和$ File2。所有这一切都与Powershell -File" C:\ myscript.ps1"完美配合。但是当使用iex"& $命令"如上所述,Cleanup函数抱怨它无法绑定$ File1和$ File2,因为它们为null!
就像iex并行执行下载和清理功能一样(调用下载,不要等待它完成 - >立即调用Cleanup)。这是iex的预期行为还是我错过了一些基本的东西?