本文轉自:http://www.cnblogs.com/wenBlog/p/6198354.htmlhtml
開發的PowerShell 腳本須要使用Invoke-RestMethod命令,發如今老的服務器上不支持這一命令,通過查詢得知因爲PS版本的問題。涉及到了PS的升級,須要介紹下PowerShell的版本。 shell
發生錯誤以下:windows
Powershell是運行在windows機器上實現系統和應用程序管理自動化的命令行腳本環境。 powershell須要.NET環境的支持,同時支持.NET對象。當前powershell有四版本,分別爲1.0,2.0,3.0 ,4.0 。服務器
若是系統是window7或者Windows Server 2008,那麼PowerShell 2.0已經內置了,能夠升級爲3.0,4.0。 運維
若是系統是Windows 8 或者Windows server 2012,那麼PowerShell 3.0已經內置了,能夠升級爲4.0。 post
若是系統爲Windows 8.1或者Windows server 2012 R2,默認是4.0。spa
碰巧我遇到一個使用PS腳本的地方須要使用3.0及其以上,微軟這方面的版本升級作的很好只須要簡單幾個步驟就能夠實現升級,而且實現了向前兼容(很遺憾32位版本的只能向後兼容)。下面就2.0升級3.0的升級步驟進行了介紹:命令行
Windows 7 和 Windows Server 2008 R2 內核版本同爲6.1,如下步驟說明如何在運行 Windows 7 SP1 和 Windows Server 2008 R2 SP1 的機器上安裝 Windows PowerShell 3.0。server
1. 在安裝Windows Management Framework 3.0以前,卸載任何Windows Management Framework 3.0以前的版本。htm
要卸載早期版本的 Windows PowerShell 3.0,請在每檯安裝了早期版本的計算機上完成如下過程:
在 Windows 控制面板中,單擊「卸載程序」。 在「程序和功能」中,單擊「查看已安裝的更新」。 在「卸載更新」窗格的「Microsoft Windows」部分中,找到標題爲「Microsoft Windows Management Framework 3.0 Beta (KB2506143)」的更新。 右鍵單擊「Microsoft Windows Management Framework 3.0 Beta (KB2506143)」,而後單擊「卸載」。 在「卸載更新」對話框中,單擊「是」。
請注意,您須要在卸載更新後從新啓動計算機。
1. 安裝Microsoft .NET Framework 4.0的完整安裝版本(dotNetFx40_Full_x86_x64.exe),或者,安裝Microsoft .NET Framework 4.5的完整安裝版本(dotNetFx45_Full_x86_x64.exe)。
2. 安裝Windows Management Framework 3.0的6.1內核版本安裝文件(Windows6.1-KB2506143-x64.msu)。
完成以下過程的安裝:
雙擊文件「Windows6.1-KB2506143-x64.msu」。 在「Windows 更新獨立安裝程序」對話框中,當詢問您是否安裝更新時單擊「是」。 在下載和安裝更新嚮導中的「請閱讀許可條款」頁上,單擊「我接受」。 在「安裝完成」頁上,單擊「當即從新啓動」當即從新啓動計算機。(必須從新啓動計算機才能使更新生效。)若是不想當即從新啓動計算機,請單擊「關閉」。如前文所述,在 Windows
PowerShell 3.0 徹底安裝以前,仍須要從新啓動計算機。
3. 驗證Windows PowerShell 3.0 是否已安裝成功。
計算機從新啓動後,能夠執行如下檢查來驗證 Windows PowerShell 3.0 是否已安裝:
依次單擊「開始」、「全部程序」、「附件」和「Windows PowerShell」,而後單擊「Windows PowerShell」。 在 Windows PowerShell 控制檯中的命令提示符下鍵入如下命令,而後按 ENTER:
Get-Host | Select-Object Version
若是 Windows PowerShell 3.0 已安裝,您將看到以下所示輸出:
Version ------- 3.0
注意
若是服務器自己已經安裝了高版本的Windows Management Framework,好比4.5等,則不須要刪除任何東西,直接安裝Windows6.1-KB2506143-x64.msu便可。須要重啓。
總結:
本文主要是介紹在windows 2008 或者7 如何升級powershell,碰巧遇到了問題,因此將這個方案記錄下來,由於如今不少服務器都是2008r2 ,爲往後的運維和升級提供依據參考。