可以安装多个 PowerShell 7 包版本。 本文重点介绍如何安装最新的稳定发布包。 有关包版本的详细信息,请参阅 PowerShell 支持生命周期 文章。
较新版本的 PowerShell 7 取代了现有 PowerShell 7 版本。 PowerShell 的预览版可以与其他版本的 PowerShell 并行安装。 较新的预览版本将替换现有的以前的预览版本。
选择安装方法
在 RHEL 上,可以使用 Microsoft 包存储库中的通用 .rpm 包或从 GitHub 发布页下载文件来安装 PowerShell。
从包存储库安装 PowerShell 7
Microsoft 构建并支持一系列适用于 Linux 系统的软件产品,并通过 Linux 打包客户端(apt、dnf、yum 等)提供这些产品。 这些 Linux 软件包托管在 Microsoft 产品的 Linux 包存储库上 (https://packages.microsoft.com),也称为 PMC。
从 PMC 安装 PowerShell 是首选安装方法。
注意
此脚本仅适用于已发布到 Microsoft 包存储库的受支持 RHEL 版本。
#!/bin/bash
###################################
# Prerequisites
# Get version of RHEL
source /etc/os-release
if [ ${VERSION_ID%.*} -ge 8 ]
then majorver=8
elif [ ${VERSION_ID%.*} -ge 9 ]
then majorver=9
fi
# Download the Microsoft RedHat repository package
curl -sSL -O https://packages.microsoft.com/config/rhel/$majorver/packages-microsoft-prod.rpm
# Register the Microsoft RedHat repository
sudo rpm -i packages-microsoft-prod.rpm
# Delete the downloaded package after installing
rm packages-microsoft-prod.rpm
# Update package index files
sudo dnf update
# Install PowerShell
sudo dnf install powershell -y
手动下载并安装 PowerShell 7
从GitHub发布页下载通用包。 选择要安装的包版本的 URL。
- PowerShell 7.6 (LTS) 通用包
https://github.com/PowerShell/PowerShell/releases/download/v7.6.0/powershell-7.6.0-1.rh.x86_64.rpm
- PowerShell 7.5 通用包
https://github.com/PowerShell/PowerShell/releases/download/v7.5.5/powershell-7.5.5-1.rh.x86_64.rpm
- PowerShell 7.4 (LTS) 通用包
https://github.com/PowerShell/PowerShell/releases/download/v7.4.14/powershell-7.4.14-1.rh.x86_64.rpm
以下 shell 脚本用于下载并安装 PowerShell 的当前版本。 可以更改 URL 以下载要安装的 PowerShell 版本。
sudo dnf install https://github.com/PowerShell/PowerShell/releases/download/v7.6.0/powershell-7.6.0-1.rh.x86_64.rpm
启动 PowerShell 7
安装包以后,从终端运行 pwsh。 如果已安装预览包,请运行 pwsh-preview。
-
$PSHOME位置因安装的包而异。- 对于稳定包和 LTS 包:
/opt/microsoft/powershell/7/ - 对于预览包:
/opt/microsoft/powershell/7-preview/
- 对于稳定包和 LTS 包:
- 配置文件脚本存储在以下位置:
- AllUsersAllHosts -
$PSHOME/profile.ps1 - 所有用户当前主机 -
$PSHOME/Microsoft.PowerShell_profile.ps1 - "CurrentUserAllHosts -
~/.config/powershell/profile.ps1" - CurrentUserCurrentHost -
~/.config/powershell/Microsoft.PowerShell_profile.ps1
- AllUsersAllHosts -
- 模块存储在以下位置:
- 用户模块 -
~/.local/share/powershell/Modules - 共享模块 -
/usr/local/share/powershell/Modules - 默认模块 -
$PSHOME/Modules
- 用户模块 -
- PSReadline 历史记录将记录到
~/.local/share/powershell/PSReadLine/ConsoleHost_history.txt中
配置文件采用 PowerShell 的按主机配置,所以默认主机特定配置文件位于相同位置下的 Microsoft.PowerShell_profile.ps1 中。
PowerShell 采用 Linux 上的 XDG 基目录规范。
卸载 PowerShell 7
sudo dnf remove powershell
支持的 RHEL 版本
Microsoft 在 PowerShell 到达支持终止日期或 RHEL 版本到达支持终止日期之前仍然支持 PowerShell。
对这些版本的 RHEL 的支持将在以下日期结束:
- RHEL 10 - 2035-05-31
- RHEL 9 - 2032-05-31
- RHEL 8 - 2029-05-31
也可从 .rpm 获取安装包文件 (https://packages.microsoft.com/)。
PowerShell 在 Red Hat 通用基础映像 (UBI) 上进行了测试。 有关详细信息,请参阅 UBI 信息页。
支持的安装方法
Microsoft 支持本文档中的安装方法。 其他源可能会提供其他第三方安装方法。 尽管这些工具和方法可能有效,但 Microsoft 无法支持这些方法。