PowerShell 7.4 是会删除旧版 PowerShell 7 的就地升级。 PowerShell 的预览版可以与其他版本的 PowerShell 并行安装。 如果需要与以前的版本并行运行 PowerShell 7.4,请使用 二进制存档 方法重新安装以前的版本。

Ubuntu 将 APT(高级包工具)用作包管理器。

通过包存储库安装包存储库

Microsoft 构建并支持一系列适用于 Linux 系统的软件产品,并通过 Linux 打包客户端(apt、dnf、yum 等)提供这些产品。 这些 Linux 软件包托管在 Microsoft 产品的 Linux 包存储库上 ( https://packages.microsoft.com ),也称为 PMC

从 PMC 安装 PowerShell 是首选安装方法。

此脚本仅适用于受支持的 Ubuntu 版本。

###################################
# Prerequisites
# Update the list of packages
sudo apt-get update
# Install pre-requisite packages.
sudo apt-get install -y wget apt-transport-https software-properties-common
# Get the version of Ubuntu
source /etc/os-release
# Download the Microsoft repository keys
wget -q https://packages.microsoft.com/config/ubuntu/$VERSION_ID/packages-microsoft-prod.deb
# Register the Microsoft repository keys
sudo dpkg -i packages-microsoft-prod.deb
# Delete the Microsoft repository keys file
rm packages-microsoft-prod.deb
# Update the list of packages after we added packages.microsoft.com
sudo apt-get update
###################################
# Install PowerShell
sudo apt-get install -y powershell
# Start PowerShell

Ubuntu 预配置了一个包存储库,其中包括 .NET 包,但不包括 PowerShell。 使用这些说明安装 PowerShell 会将 Microsoft 存储库注册为包源。 可以从此存储库安装 PowerShell 和某些版本的 .NET。 但是,Ubuntu 包存储库具有不同版本的 .NET 包。 出于其他目的安装 .NET 时,这可能会导致问题。 有关这些问题的详细信息,请参阅排查 Linux 上的 .NET 包混淆问题

必须选择要用于安装 .NET 的源。 可以设置包存储库的优先级,使其中一个优先于另一个。 有关如何设置优先级的说明,请参阅我的 Linux 分发版提供 .NET 包,我想使用它们

通过直接下载安装

PowerShell 7.2 引入了一个简化安装过程的通用包。 从“版本”页将通用包下载到安装 Ubuntu 的计算机。

指向当前版本的链接是:

  • 适用于受支持的 Ubuntu 版本的 PowerShell 7.4 (LTS) 通用包
    • https://github.com/PowerShell/PowerShell/releases/download/v7.4.2/powershell_7.4.2-1.deb_amd64.deb
    • 适用于受支持的 Ubuntu 版本的 PowerShell 7.3.12 (stable) 通用包
      • https://github.com/PowerShell/PowerShell/releases/download/v7.3.12/powershell_7.3.12-1.deb_amd64.deb
      • 适用于受支持的 Ubuntu 版本的 PowerShell 7.2.19 (LTS) 通用包
        • https://github.com/PowerShell/PowerShell/releases/download/v7.2.19/powershell_7.2.19-1.deb_amd64.deb
        • 以下 shell 脚本用于下载并安装 PowerShell 的当前预览版本。 可以更改 URL 以下载要安装的 PowerShell 版本。

          ###################################
          # Prerequisites
          # Update the list of packages
          sudo apt-get update
          # Install pre-requisite packages.
          sudo apt-get install -y wget
          # Download the PowerShell package file
          wget https://github.com/PowerShell/PowerShell/releases/download/v7.4.2/powershell_7.4.2-1.deb_amd64.deb
          ###################################
          # Install the PowerShell package
          sudo dpkg -i powershell_7.4.2-1.deb_amd64.deb
          # Resolve missing dependencies and finish the install (if necessary)
          sudo apt-get install -f
          # Delete the downloaded package file
          rm powershell_7.4.2-1.deb_amd64.deb
          # Start PowerShell Preview
          pwsh-lts
          

          卸载 PowerShell

          sudo apt-get remove powershell
          

          支持 Arm 处理器

          PowerShell 7.2 及更高版本支持在使用 32 位 Arm 处理器的 Ubuntu 上运行。 请使用在 Linux 上安装 PowerShell 的备用方法中所述的用于安装 PowerShell 的二进制存档安装方法。

          PowerShell 路径

        • $PSHOME/opt/microsoft/powershell/7/
        • 配置文件脚本存储在以下位置:
          • AllUsersAllHosts - $PSHOME/profile.ps1
          • AllUsersCurrentHost - $PSHOME/Microsoft.PowerShell_profile.ps1
          • CurrentUserAllHosts - ~/.config/powershell/profile.ps1
          • CurrentUserCurrentHost - ~/.config/powershell/Microsoft.PowerShell_profile.ps1
          • 模块存储在以下位置:
            • 用户模块 - ~/.local/share/powershell/Modules
            • 共享模块 - /usr/local/share/powershell/Modules
            • 默认模块 - $PSHOME/Modules
            • PSReadline 历史记录将记录到 ~/.local/share/powershell/PSReadLine/ConsoleHost_history.txt
            • PowerShell 采用 Linux 上的 XDG 基目录规范

              支持的版本

              下表列出了当前受支持的 PowerShell 版本以及支持它们的 Ubuntu 版本。 这些版本在 PowerShell 版本到达支持终止日期Ubuntu 版本到达支持终止日期之前仍受支持。

            • 支持 图标指示仍支持 OS 或 PowerShell 版本
            • 不支持 图标指示该 OS 版本不再支持 PowerShell 版本
            • 测试中 图标指示我们尚未在该 OS 上完成 PowerShell 的测试
            • 不支持 图标指示不支持 OS 或 PowerShell 版本
            • 当 OS 版本和 PowerShell 版本都具有 支持 图标时,将支持该组合
            • 即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:https://aka.ms/ContentUserFeedback

              提交和查看相关反馈

  •