【问题标题】:PowerShell remoting vs Host VersionPowerShell 远程处理与主机版本
【发布时间】:2012-10-11 04:20:30
【问题描述】:

我在使用 Powershell 进行远程处理时遇到了一个奇怪的问题。

我有一个名为 dothis.ps1 的脚本,它执行以下操作:

$s = New-PSSession -ComputerName $someServer -Authentication CredSSP -Credential $credential              
$result = Invoke-Command -Session $s { param($dropLocation) C:\somScript.ps1 @PSBoundParameters } -ArgumentList $DropLocation

这个脚本由Microsoft.TeamFoundation.Build.Workflows.ActivitiesInvokeProcess执行

我遇到的问题是,如果我从 dothis.ps1 打印出 Powershell 的版本,我得到的是 2.0。

但如果我从远程脚本 (somSecript.ps1) 中打印出 Powershell 的版本,它会给我 1.0。

我想知道我正在运行的 powershell 的版本,因为以下命令不起作用:$Host.Runspace.ThreadOptions

有人可以解释一下发生了什么吗?谢谢。

【问题讨论】:

    标签: powershell-remoting


    【解决方案1】:

    您正在读取的版本值显然来自注册表,即使您使用的是较新版本的 PS(因为 PS v1 不支持会话)。阅读this other StackOverflow article 将我指向$psversiontable,这应该可以让你得到你所追求的。

    【讨论】:

    • +1 对,但您也应该发布另一篇文章的链接。
    • 完成了,我之前已经关闭了它,但是既然你提到了它,我就去挖了它。谢谢!
    猜你喜欢
    • 2020-02-02
    • 1970-01-01
    • 2014-11-19
    • 2018-10-28
    • 2017-03-08
    • 1970-01-01
    • 2017-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多