Powershell 在后台执行脚本

Powershell 在后台执行脚本,powershell,jobs,Powershell,Jobs,我需要从主脚本运行后台脚本 主脚本: Start-Job -ScriptBlock { C:\Temp\EMEAProductRefreshApp.ps1 } -ArgumentList $server | Out-File -Append "C:\Temp\abc.txt" 子脚本: "Came to sub script" | Out-File -Append "C:\Temp\abc.txt" 但这不是从下标在输出文件中打印,请建议。当父级退出时,后台作业被终止,您应该使用等待

我需要从主脚本运行后台脚本

主脚本:

Start-Job -ScriptBlock {
    C:\Temp\EMEAProductRefreshApp.ps1
} -ArgumentList $server | Out-File -Append "C:\Temp\abc.txt"
子脚本:

"Came to sub script" | Out-File -Append "C:\Temp\abc.txt"

但这不是从下标在输出文件中打印,请建议。

当父级退出时,后台作业被终止,您应该使用等待作业等待完成:

Start-Job -ScriptBlock { C:\Temp\EMEAProductRefreshApp.ps1 } -ArgumentList $server | Wait-Job | Out-File -Append "C:\Temp\abc.txt"

您发布的代码将作业信息以及行“来到子脚本”写入输出文件,正如人们所期望的那样,因此我冒昧猜测您发布的代码与实际代码不匹配。
ScriptBlock
用于代码,您应该使用
FilePath
启动脚本:
start job-FilePath“C:\Temp\EMEAProductRefreshApp.ps1”-ArgumentList$server