如何升级PowerShell

背景:

开发的PowerShell 脚本需要使用Invoke-RestMethod命令,发现在老的服务器上不支持这一命令,经过查询得知由于PS版本的问题。涉及到了PS的升级,需要介绍下PowerShell的版本。

发生错误如下:

简介:

   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。

如果系统为Windows 8.1或者Windows server 2012 R2,默认是4.0。

碰巧我遇到一个使用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。

安装准备

1. 在安装Windows Management Framework 3.0之前,卸载任何Windows Management Framework 3.0之前的版本。

要卸载早期版本的 Windows PowerShell 3.0,请在每台安装了早期版本的计算机上完成以下过程:

在 Windows 控制面板中,单击“卸载程序”。  
    在“程序和功能”中,单击“查看已安装的更新”。    
    在“卸载更新”窗格的“Microsoft Windows”部分中,找到标题为“Microsoft Windows Management Framework 3.0 Beta (KB2506143)”的更新。    
    右键单击“Microsoft Windows Management Framework 3.0 Beta (KB2506143)”,然后单击“卸载”。    
    在“卸载更新”对话框中,单击“是”。

请注意,您需要在卸载更新后重新启动计算机。

安装Windows PowerShell 3.0

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 ,为日后的运维和升级提供依据参考。

时间: 2024-12-05 03:21:04

如何升级PowerShell的相关文章

升级PowerShell至4.0版本

为了更好的使用Cmder v1.2,不得不升级PowerShell为4.0. 不知道Cmder的,可以点击这里:https://github.com/cmderdev/cmder 和 逆天神器 cmder. Powershell是运行在Windows机器上实现系统和应用程序管理自动化的命令行脚本环境. 需要.NET环境的支持, 同时支持.NET对象.当前PowerShell有5个版本,分别为1.0.2.0.3.0.4.0.5.0 如果系统是Windows 7或者Windows Server 20

利用Powershell在IIS上自动化部署网站

本文主要讲如何通过Powershell在IIS上自动化部署ASP.NET网站,而不涉及Powershell的基本语法,如果没有Powershell基础的同学也可以把本文作为学习Powershell的基石,通过学习本文中的脚本再去查阅具体的语法,可能会达到事半功倍的效果. 一般我们建立网站大致需要以下几个步骤: 1.安装.NET Framework 2.安装了IIS 3.注册.启用ISAPI和CGI限制 4.建立网站 5.设置默认首页.身份验证.设置MIME类型 6.绑定域名或IP地址 7.设置权

PowerShell统计本地的网络连接(CMD吐数据互访)

需求:想把netstat-an吐出来的数据统计一下,看看本地连外地有多少个,外地连本地有多少个.协议分类什么的. 注意:因为netstat是cmd的命令,尽管在PowerShell下可以运行这个命令,但是吐出来的数据是没办法在加工的,它不是PowerShell原生命令.所以解决方法是把数据吐到一个csv文件中,然后针对CSV进行加工,最后得到需要的统计信息. 首先来一个中文版的,经过测试,需要PowerShell3.0以上,也就是Windows Server 2012以上的版本(windows8

Centos6.5 上Ansible 对Windows 管控

安装依赖包 安装PyCrypto:http://blog.csdn.net/eric_sunah/article/details/45826933 安装paramiko(http://blog.csdn.net/zyz511919766/article/details/18355795) 安装pywinrm:pip install http://github.com/diyan/pywinrm/archive/master.zip#egg=pywinrm 配置PowerShell 使用 $PSV

windows中vim以及cmder的使用

虽然有gvim,但是我依然更喜欢控制台(可理解为博主的偏执已经发展到某个阶段). windows自带的控制台很糟糕,尤其是我正在用的win7竟然没有全屏功能.任何一个占领屏幕的图标显然是不可忍受的. 虽然我已经有了cygwin但是我依然希望使用原生环境的vim(偏执的持续发展) 上github搜搜,我们得到了cmder,其主页有下载地址 cmder的注意点: 1.需要vc2015运行库支持 2.升级powershell到4.0 3.使用管理员权限执行后运行命令 Set-ExecutionPoli

windows server2008R2申请免费let's encrypt证书

Let's Encrypt 项目(https://letsencrypt.org/)是由互联网安全研究小组ISRG,Internet Security Research Group主导并开发的一个新型数字证书认证机构CA,Certificate Authority.该项目旨在开发一个自由且开放的自动化 CA 套件,并向公众提供相关的证书免费签发服务以降低安全通讯的财务.技术和教育成本.在过去的一年中,互联网安全研究小组拟定了 ACME 协议草案,并首次实现了使用该协议的应用套件:服务端 Boul

ansible 管理windows2008

0x00 .为了自动化管理windows服务器,测试ansbile管理windows 测试工具.环境:ubuntu 14.04 LTS,windows 2008 sp2, python2.7 ,ipython, ansible1.7 0x01 .在windows服务器上面初始配置winrm a.升级powershell https://github.com/cchurch/ansible/blob/devel/examples/scripts/upgrade_to_ps3.ps1 b.配置win

Ansible控制Windows操作步骤

环境: CentOS 6.75(Ansible 2.0) Windows Server 2012 (PowerShell 4.0) 1.确保PowerShell版本为3.0以上 ansible要控制windows,必须要求windows主机的PowerShell版本为3.0以上,如果版本不满足要求需要升级PowerShell. 查看PowerShell版本可以使用以下命令 $PSVersionTable.PSVersion 如果版本不满足要求,可以使用下面脚本进行升级(将脚本内容保存到一个pow

利用ansible批量创建iis站点

准备: 系统必须大于等于windows2008 R2 系统 升级 PowerShell至3.0 安装iis 安装net ansible控制台目录结构 . ├── hosts #ansible 存放客户机IP ├── roles │   └── web │       ├── files │       │   └── web.ps1 # 创建iis站点ps脚本 │       └── tasks │           └── main.yml #ansible 控制脚本 └── web.yml