我的PS版有什么问题?

时间:2014-06-10 01:59:27

标签: powershell

我的服务器的PS版本是版本3或1,具体取决于请求是在本地shell上完成还是远程执行:

我在本地服务器上获得PS版本3

PS C:\Users\ea_admin> (Get-Host).Version

Major  Minor  Build  Revision
-----  -----  -----  --------
3      0      -1     -1      

我在运行(Get-Host)的同一台服务器上获得PS版本1。远程版本:

Invoke-Command -Session $session {
    return (Get-Host).Version
} 

"Major":  1,
"Minor":  0,
"Build":  0,
"Revision":  0,
"MajorRevision":  0,
"MinorRevision":  0,
"PSComputerName":  "remote.server1234567890.com.au",
"RunspaceId":  "23634ba8-bfe3-4242-8593-bed3d9aa8ad1",
"PSShowComputerName":  true
  1. 本地执行命令有什么区别 远程?

  2. 我有一个我无法访问的脚本,它正在给出一个 关于我的PS版本的警告信息,我需要摆脱那条消息。

  3. 感谢

2 个答案:

答案 0 :(得分:3)

远程处理使用不同的主机。如果您只是Get-Host,您应该会看到其他一些差异。你应该能够specify which version to use within the session

Register-PSSessionConfiguration -Name PS3 -PSVersion 3.0
$s = New-PSSession -ComputerName Server01 -ConfigurationName PS3

答案 1 :(得分:0)

(Get-Host).Version返回主机应用程序的版本。

(Get-Host).Runspace.Version返回PowerShell操作环境的版本。