在 Linux 上安装 PowerShell 的替代方法

GitHub 版本页面上提供有所有可用包。 安装包以后,从终端运行 pwsh。 若已安装预览版,请运行 pwsh-preview

在 Linux 分发版上安装 PowerShell 还有三种方法:

Snap 包

Snaps 是易于安装、安全、跨平台且无需依赖项的应用程序包。 Snap 可通过 Snap Store 发现和安装。 Snap包的支持方式与您运行软件包所用的发行版一致。

重要

Snap Store 包含许多 Linux 分发版的 PowerShell 快照包,这些分发版没有得到微软正式支持。 有关支持,请参阅可用 社区支持 选项的列表。

获取 snapd

要运行 snap,必须使用 snapd使用这些说明来确保已安装snapd

通过 Snap 安装

有两个适用于 Linux 的 PowerShell 版本已发布在 Snap 存储powershellpowershell-preview

使用以下命令安装最新稳定版本的 PowerShell:

# Install PowerShell
sudo snap install powershell --classic

# Start PowerShell
pwsh

如果未指定 --channel 参数,Snap 将安装最新的稳定版本。 若要安装最新的 LTS 版本,请使用以下方法:

# Install PowerShell
sudo snap install powershell --channel=lts/stable --classic

# Start PowerShell
pwsh

注释

Microsoft 仅支持 latest/stable 包的 lts/stablepowershell 通道。 不要从其他通道安装包。

若要安装预览版,请使用以下方法:

# Install PowerShell
sudo snap install powershell-preview --classic

# Start PowerShell
pwsh-preview

注释

Microsoft 仅支持 latest/stable 包的 powershell-preview 通道。 不要从其他通道安装包。

安装后,Snap 将自动升级。 您可以使用 sudo snap refresh powershellsudo snap refresh powershell-preview 触发升级。

卸载

sudo snap remove powershell

sudo snap remove powershell-preview

二进制存档

PowerShell 二进制 tar.gz 存档是为 Linux 平台提供的,用于启用高级部署方案。

注释

你可以使用此方法安装任何版本的 PowerShell,包括最新版本:

依赖关系

PowerShell 为所有 Linux 分发版生成可移植二进制文件。 但是,.NET Core 运行时需要对不同分发版的不同依赖项,并且 PowerShell 也要求这些依赖项。

安装 PowerShell 时,可能会不安装特定依赖项,例如从二进制存档手动安装时。 以下列表详细介绍了Microsoft支持的 Linux 分发版,并具有可能需要安装的依赖项。 有关详细信息,请查看分发页:

若要在不受正式支持的 Linux 分发版上部署 PowerShell 二进制文件,需要在单独的步骤中为目标 OS 安装必要的依赖项。 例如, Amazon Linux dockerfile 首先安装依赖项,然后提取 Linux tar.gz 存档。

使用二进制存档文件进行安装

重要

此方法可用于在任何 Linux 版本上安装 PowerShell,包括不受Microsoft正式支持的分发版。 请务必安装任何必要的依赖项。 有关支持,请参阅可用 社区支持 选项的列表。

以下示例演示安装 x64 二进制存档的步骤。 必须选择与平台的处理器类型匹配的正确二进制存档。

  • powershell-7.5.1-linux-arm32.tar.gz
  • powershell-7.5.1-linux-arm64.tar.gz
  • powershell-7.5.1-linux-x64.tar.gz

使用以下 shell 命令从 tar.gz 二进制存档下载并安装 PowerShell。 更改 URL 以匹配要安装的 PowerShell 版本。

# Download the powershell '.tar.gz' archive
curl -L -o /tmp/powershell.tar.gz https://github.com/PowerShell/PowerShell/releases/download/v7.5.1/powershell-7.5.1-linux-x64.tar.gz

# Create the target folder where powershell will be placed
sudo mkdir -p /opt/microsoft/powershell/7

# Expand powershell to the target folder
sudo tar zxf /tmp/powershell.tar.gz -C /opt/microsoft/powershell/7

# Set execute permissions
sudo chmod +x /opt/microsoft/powershell/7/pwsh

# Create the symbolic link that points to pwsh
sudo ln -s /opt/microsoft/powershell/7/pwsh /usr/bin/pwsh

卸载二进制存档

sudo rm -rf /usr/bin/pwsh /opt/microsoft/powershell

作为 .NET 全局工具安装

如果你已安装 .NET Core SDK,则可以轻松地安装 PowerShell 作为 .NET 全局工具

dotnet tool install --global PowerShell

dotnet 工具安装程序将 ~/.dotnet/tools 添加到 PATH 环境变量中。 但当前运行的 shell 没有更新后的 PATH。 应该可以通过键入 pwsh 从新 shell 启动 PowerShell。