如何在PowerShell会话中正确退出远程作业

时间:2015-06-17 00:37:47

标签: powershell rpc invoke-command

我有许多以Powerhsell invoke-command -session命令启动的远程作业。在某些情况下,至少有一个远程子作业退出,但本地PS会话状态将作业报告为"Running",并且会话挂起等待作业完成。

这是PSv2中的已知错误吗?是否有解决方法或技术允许PS正确检测远程子作业何时退出?

2 个答案:

答案 0 :(得分:0)

当您使用Invoke-Command -Session时,我相信您需要使用Get-PSSession命令来获取更新的状态。来自Technet

-Session

在指定的Windows PowerShell会话(PSSessions)中运行该命令。输入包含PSSessions的变量或创建或获取PSSession的命令,例如New-PSSession或Get-PSSession命令。

答案 1 :(得分:0)

怎么样:Remove-PSSession

Get-PSSession | Remove-PSSession
Remove-PSSession -Session (Get-PSSession)
$s = Get-PSSession
Remove-PSSession -Session $s

OR

$r = Get-PSSession -ComputerName Serv*
$r | Remove-PSSession

Powershell Core: Remove-PSSession