将 Windows PowerShell 更新到最新版本

Marion Paul Kenneth Mendoza 2023年1月30日
  1. 更新 Windows PowerShell 5.1
  2. 安装和更新 PowerShell (Core) 7
将 Windows PowerShell 更新到最新版本

在 Windows PowerShell 中运行脚本时,由于 PowerShell 版本过时,我们可能会遇到一些错误。要检查 Windows PowerShell 版本,我们可以在脚本环境中输入 $PSVersionTable 或运行以下语法。

Get-Host | Select-Object Version

过去我们可以从 Windows Update 获得自动更新。尽管如此,由于微软正在慢慢迁移到 PowerShell (Core) 7.0 作为其主要脚本版本,PowerShell 5.1 是最后一个发布的版本。

本文将向你展示如何使用 Windows PowerShell 按需获取更新。

更新 Windows PowerShell 5.1

目前,鉴于 Windows PowerShell 5.1 处于仅维护模式,我们不会看到新的重大进展,这与它最近的继任者 PowerShell (Core) 7 版本不同。

但是,你可以更新 PowerShellGet 模块,其中定义了导致问题的 Register-PSRepository 命令。要更新 Windows PowerShell 5.1,请运行以下命令。

Update-Module PowerShellGet

虽然你通常只运行上面的命令,但第一次从 PowerShell 库切换到最新版本时需要使用不同的方法。

  • 打开提升的会话(以管理员身份运行)。
  • 执行以下操作(添加 -Verbose 以获取详细信息):
Install-Module PowerShellGet -Force

-Force 启用安装,即使该名称的模块已经安装。请注意,你可能仍会看到有关下载 NuGet 包提供程序的提示。

请注意,旧的 PowerShellGet 版本将停留在不同的位置,但新版本将优先于它。

在初始切换到安装画廊的版本之后,你将能够在未来的版本中使用 Update-Module PowerShellGet

安装和更新 PowerShell (Core) 7

与 Windows PowerShell 5.1 不同,Windows PowerShell (Core) 7 不在 Windows 操作系统中预加载,需要手动安装。如果你运行的是 Windows 10 及更高版本的操作系统,则可以在 Microsoft Store 中获取 PowerShell (Core) 7。

或者,我们可以使用 Windows 包管理器或 winget 命令行快速发现、安装、升级、删除和配置 Windows 10 计算机上的应用程序。

Windows 包管理器或 winget 当前处于预览状态。要安装 winget 的预览版,你有两个选择:

  • winget 命令是开源的,这在技术上意味着你可以从 Github 克隆、构建和运行存储库。
  • 你还可以成为 Windows Insider 并加入 Windows Package Manager Insider 计划,方法是将你的 Microsoft 帐户发送至 winget-feedback@microsoft.com 并请求包含在预览版中。

加入 Insider 计划后,前往 Microsoft Store 并获取 App Installer 的应用程序。Windows 包管理器或 winget 将在你获得更新后可用。

现在你可以开始在 Windows 终端、Windows CLI 或 Windows PowerShell 中使用 Windows 包管理器或 winget。命令行客户端 winget.exe 已预先配置为指向 Microsoft 社区存储库。

要在 Windows 包管理器中检查所有可用的 PowerShell 安装程序,请运行以下命令。

winget search powershell

你可以运行以下命令来安装最新的 Windows PowerShell (Core) 7 版本。

winget install powershell

你还可以使用 winget 升级你当前的 Windows PowerShell 版本。

winget upgrade powershell

或者,你可以使用下面的脚本来获取更新的 Windows PowerShell 包。

Invoke-Expression "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI"

从命令提示符处运行以下命令,等待下载完成,它将提示安装向导按照说明进行安装。

Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn