【发布时间】:2018-01-02 04:51:45
【问题描述】:
我正在尝试在 powershell 中调用 Start-Job。当我这样做时,它会生成一个带有以下参数的后台 powershell:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Version 5.0 -s -NoLogo -NoProfile -EncodedCommand [encoded command I want to run in base64]
但是,无论我发送什么命令,powershell 命令似乎都不会完成。
我尝试像这样生成一个 powershell 实例:
powershell.exe -s
这似乎也创建了一个看起来冻结的实例,没有执行或做任何事情。在网上看,我似乎找不到任何对 -s 参数的引用。
有人知道它的用途或如何摆脱它,以便我的开始工作正常工作吗?
编辑:-s 可能是 -sta 的简写,但我的命令不会使用 -sta 冻结,但使用 -s 会冻结。
Edit2:我后来发现 -s 是 -ServerMode 的简写,显然是旧版 Powershell 2.0 选项。我不知道为什么在使用 Start-Job 时会添加它。
Edit3:我使用的命令是:
$deploymentsJobs += Start-Job -InitializationScript { SomeSmallFunction } (AnotherFunction) -ArgumentList $arg1, $arg2, $arg3}
【问题讨论】:
-
我很感激,@Ghi102
标签: powershell command-line-interface start-job