在 macOS 上安裝 PowerShell

PowerShell 7.0 或更高版本需要 macOS 10.13 與更高版本。 GitHub 發行頁面上提供所有套件。 安裝套件之後,請從終端機執行 pwsh。 安裝之前,請先檢查 支援的版本 清單。

注意

PowerShell 7.2 是一種就地升級,可移除舊版 PowerShell 6.x 和7.x 版。

/usr/local/microsoft/powershell/6 資料夾已由 /usr/local/microsoft/powershell/7 取代。

如果您需要與 PowerShell 7.2 並存執行較舊版本的 PowerShell,請使用 二進位 封存方法安裝您想要的版本。

在 macOS 10.13 或更新版本上透過 Homebrew 安裝最新的穩定版本

有幾種方式可在 macOS 上安裝 PowerShell。 請選擇下列其中一個方法:

安裝 PowerShell 之後,會需要一併安裝 OpenSSL。 PowerShell WSMan 遠端處理需要 OpenSSL。

如果找不到 brew 命令,您需要遵循指示安裝 Homebrew。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

現在,您可以安裝 PowerShell:

brew install --cask powershell

最後,確認您的安裝可以正常執行:

pwsh

當新的 PowerShell 版本發行時,請更新 Homebrew 的公式並升級 PowerShell:

brew update
brew upgrade powershell --cask

注意

您可以從 PowerShell (pwsh) 主機內呼叫上述命令,但必須結束並重新啟動 PowerShell 殼層,才能完成升級並重新整理 $PSVersionTable 中顯示的值。

在 macOS 10.13 或更新版本上透過 Homebrew 安裝最新的預覽版本

安裝 Homebrew 之後,您可以安裝 PowerShell。 首先,安裝 Cask-Versions 套件,它可讓您安裝 Cask 套件的替代版本:

brew tap homebrew/cask-versions

現在,您可以安裝 PowerShell:

brew install --cask powershell-preview

最後,確認您的安裝可以正常執行:

pwsh-preview

當新的 PowerShell 版本發行時,請更新 Homebrew 的公式並升級 PowerShell:

brew update
brew upgrade powershell-preview --cask

注意

上述命令可從 PowerShell (pwsh) 主機內呼叫,但 PowerShell 殼層必須結束並重新啟動,才能完成升級。 並重新整理 $PSVersionTable 中顯示的值。

穩定版本與 LTS 版本也支援使用 Homebrew tap 方法安裝 PowerShell。

brew install powershell/tap/powershell

您現在可驗證安裝

pwsh

發行新版本的 PowerShell 時,請執行下列命令。

brew upgrade powershell

注意

無論使用 cask 或 tap 方法,當更新至較新版本的 PowerShell 時,請使用與當初安裝 PowerShell 時相同的方法。 如果使用不同的方法,則開啟新的 pwsh 工作階段時將會繼續使用舊版 PowerShell。

如果決定使用不同的方法,則可使用 Homebrew link 方法來修正問題。

透過直接下載來安裝

PowerShell 7.2 新增對 Apple M1 處理器的支援。 從 [ 發行 ] 頁面將安裝套件下載到您的電腦。 目前版本的連結如下:

您可以按兩下檔案並依照提示執行,或使用下列命令從終端機進行安裝。 變更檔案名,使其符合您下載的檔案。

sudo installer -pkg powershell-7.2.0-osx-x64.pkg -target /

如果您在 macOS Big Sur 11.5 或更高版本上執行,您可能會在安裝套件時收到下列錯誤訊息:

無法開啟 "powershell-7.2.0-osx-x64. pkg",因為 Apple 無法檢查是否有惡意軟體。

有兩種方式可以解決此問題:

使用搜尋工具

  1. 在搜尋工具中尋找套件。
  2. 當您按下 Ctrl 鍵) 在套件上時,請按一下控制項 (按一下。
  3. 從內容功能表中選取 [ 開啟 ]。

從命令列

  1. 執行 sudo xattr -rd com.apple.quarantine powershell-7.2.0-osx-x64.pkg。 包含檔案的完整路徑 .pkg
  2. 像平常一樣安裝套件 wou

注意

這是與封裝公證相關的已知問題,未來將會解決此問題。

安裝 OpenSSL。 PowerShell 遠端執行功能與 CIM 作業需要 OpenSSL。

安裝為 .NET 全域工具

如果您已安裝 .NET Core SDK,就可以輕鬆地將 PowerShell 安裝為 .NET 全域工具

dotnet tool install --global PowerShell

Dotnet 工具安裝程式會將 ~/.dotnet/tools 新增至您的 PATH 環境變數。 不過,目前執行的殼層沒有更新的 PATH。 您應該能夠透過輸入 pwsh,以從新的殼層啟動 PowerShell。

安裝 OpenSSL。 PowerShell 遠端執行功能與 CIM 作業需要 OpenSSL。

二進位封存

macOS 平台有 PowerShell 二進位 tar.gz 封存,以啟用進階的部署案例。 當使用此方法安裝時,也必須手動安裝相依性。

安裝 OpenSSL。 PowerShell 遠端執行功能與 CIM 作業需要 OpenSSL。

注意

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

解除安裝 macOS 上的二進位封存

從 [ 發行 ] 頁面將安裝套件下載到您的電腦。 目前版本的連結如下:

使用下列命令從二進位封存安裝 PowerShell。 變更下載 URL,使其符合您要安裝的版本。

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

# Create the target folder where powershell is placed
sudo mkdir -p /usr/local/microsoft/powershell/7.2.0

# Expand powershell to the target folder
sudo tar zxf /tmp/powershell.tar.gz -C /usr/local/microsoft/powershell/7.2.0

# Set execute permissions
sudo chmod +x /usr/local/microsoft/powershell/7.2.0/pwsh

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

安裝相依性

PowerShell 遠端執行功能與 CIM 作業需要 OpenSSL。 如有需要,您可透過 MacPorts 安裝 OpenSSL。

注意

當 MacPorts 和 Homebrew 在同一個系統上一起使用時可能會發生問題。 不過,Homebrew 沒有 OpenSSL 1.0 的套件。 如需詳細資訊,請參閱 MacPorts 常見問題集

  1. 安裝 Xcode 命令列工具。 MacPorts 需要 Xcode 工具。

    xcode-select --install
    
  2. 安裝 MacPorts。 若需要指示,請參閱安裝指南 (英文)。

  3. 透過執行 sudo port selfupdate 來更新 MacPorts。

  4. 透過執行 sudo port upgrade outdated 來升級 MacPorts 套件。

  5. 安裝 OpenSSL:

    • 針對 x64 型系統執行 sudo port install openssl10
    • 針對 M1 型系統執行 sudo port install openssl10 +universal
  6. 連結程式庫,以供 PowerShell 使用它們:

    sudo mkdir -p /usr/local/opt/openssl
    sudo ln -s /opt/local/lib/openssl-1.0 /usr/local/opt/openssl/lib
    

解除安裝 PowerShell

如果您使用 Homebrew 安裝 PowerShell,請使用下列命令解除安裝:

brew uninstall --cask powershell

如已透過直接下載安裝 PowerShell,即必須手動移除 PowerShell:

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

若要移除其他的 PowerShell 路徑,請參閱此文件中的路徑一節,並使用 sudo rm 移除路徑。

注意

如果使用 Homebrew 安裝,此即非必要。

路徑

  • $PSHOME/usr/local/microsoft/powershell/7.2.0/
  • 使用者設定檔的讀取來源 ~/.config/powershell/profile.ps1
  • 預設設定檔的讀取來源 $PSHOME/profile.ps1
  • 使用者模組的讀取來源 ~/.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 遵循 macOS 上的 XDG 基底目錄規格

因為 macOS 是 BSD 的衍生項,所以使用的前置詞是 /usr/local 而非 /opt。 因此,$PSHOME/usr/local/microsoft/powershell/7.2.0/,而符號連結放置在 /usr/local/bin/pwsh

支援的版本

下表列出目前支援的 PowerShell 版本,以及支援它們的 Windows 版本。 除非 PowerShell 的版本 達到終止支援 或版本的 [macOS 到達終止支援] [eol-windows],否則仍支援這些版本。

  • ✅ 表示仍支援 OS 或 PowerShell 的版本
  • ❌ 表示不支援 OS 或 PowerShell 的版本
  • 🟡指出該作業系統版本已不再支援的 PowerShell 版本
  • 當作業系統版本和 PowerShell 版本都 ✅ 時,即支援該組合
macOS 7.0 (LTS) 7.1 7.2 (LTS-目前)
✅ macOS Big Sur 11。5
✅ macOS Catalina 10.15
✅ macOS Mojave 10.14
✅ macOS 高的塞拉里昂10.13

macOS Monterey 12.0 尚未經過測試。

MacOS 的支援是由 Apple 所定義。 如需詳細資訊,請參閱

下列處理器架構的 macOS 支援 PowerShell:

macOS 7.0 (LTS) 7.1 7.2 (LTS-目前)
macOS Big Sur 11。5 x64 x64 x64、Arm64
macOS 高塞拉里昂 10.13 + x64 x64 x64

安裝支援

Microsoft 支援此文件中的安裝方法。 其他來源可能會提供其他安裝方法。 雖然那些工具與方法都有用,但 Microsoft 無法支援那些方法。

其他資源