2012-04-11 39 views
0

我有一個使用Powershell遠程處理的奇怪問題。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 

這個腳本是由InvokeProcessMicrosoft.TeamFoundation.Build.Workflows.Activities

我有問題執行的是如果我打印出來的版本來自dothis.ps1的Powershell,我有2.0。

但是,如果我從遠程腳本(somSecript.ps1)打印出Powershell的版本,它會給我1.0。

我想知道我是跑,因爲下面的命令不起作用PowerShell的版本:$Host.Runspace.ThreadOptions

有人可以解釋我是怎麼回事?謝謝。

回答

4

即使您使用的是較新版本的PS(因爲PS v1不支持會話),您正在閱讀的版本值顯然會從註冊表中出來。讀this other StackOverflow article指向我$psversiontable,這應該讓你確切地知道你在做什麼。

+1

+1對,但你也應該鏈接到其他文章。 – 2012-10-10 15:13:06

+1

完成之後,我早些時候關閉了它,但自從您提到它之後,我就去挖了它。謝謝! – 2012-10-10 20:20:50