退出行为与Exit-PSSession不同

时间:2019-01-04 10:47:27

标签: powershell powershell-v4.0

Microsoft documentation说:

  

示例3:使用Exit关键字停止会话

     

PS C:\> Enter-PSSession -computername Server01 Server01\PS> exit PS C:\>

     

此示例使用Exit关键字停止互动   使用Enter-PSSession启动会话。 Exit关键字具有   与使用Exit-PSSession具有相同的效果。

这意味着Exit等同于Exit-PSSession

但是,Exit的行为与Exit-PSSession不同。

例如,以下输出“ blah”:

Exit-PSSession
Write-Host "blah"

但这不是:

Exit
Write-Host "blah"

我做错什么了吗?

1 个答案:

答案 0 :(得分:0)

如果您的PowerShell会话不是使用Enter-PSSession输入的远程会话,则Exit-PSSession是安静的无操作,即,安静地没有任何操作< / em>。

相比之下,exit在本地和远程会话中均可工作。

换句话说:

  • 仅在远程会话中使用Exit-PSSession有意义 [1]
  • 只有exit个等价物。

换一种说法:

  • Exit-PSSession似乎主要是为了与Enter-PSSession对称而存在。
  • 您可以选择只使用exit,这也具有在 local 会话中工作的优势。

[1]如docs所暗示(强调):“结束与远程计算机的交互式会话。”和“ Exit-PSSession cmdlet结束您通过使用Enter-PSSession cmdlet 开始的交互式会话。