Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

Installing PowerShell on macOS

02/01/2023

PowerShell 7.0 or higher require macOS 10.13 and higher. All packages are
available on our GitHub releases page. After the package is installed, run pwshfrom
a terminal. Before installing, check the list of Supported versions below.

Note

PowerShell 7.3 is an in-place upgrade that removes previous versions of


PowerShell.

If you need to run an older version of PowerShell side-by-side with PowerShell


7.3, install the version you want using the binary archive method.

There are several ways to install PowerShell on macOS. Choose one of the
following methods:

 Install using Homebrew. Homebrew is the preferred package manager for


macOS.
 Install PowerShell via Direct Download
 Install from binary archives.

If the brew command isn't found, you need to install Homebrew following their


instructions.

/bin/bash -c "$(curl -fsSL


https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Now, you can install PowerShell:

brew install --cask powershell

Finally, verify that your install is working properly:

pwsh

When new versions of PowerShell are released, update Homebrew's formulae and
upgrade PowerShell:

brew update
brew upgrade powershell --cask

Note
The commands above can be called from within a PowerShell (pwsh) host, but
then the PowerShell shell must be exited and restarted to complete the upgrade and
refresh the values shown in $PSVersionTable.

After you've installed Homebrew, you can install PowerShell. First, install
the Cask-Versions package that lets you install alternative versions of cask
packages:

brew tap homebrew/cask-versions

Now, you can install PowerShell:

brew install --cask powershell-preview

Finally, verify that your install is working properly:

pwsh-preview

When new versions of PowerShell are released, update Homebrew's formulae and
upgrade PowerShell:

brew update
brew upgrade powershell-preview --cask

Note

The commands above can be called from within a PowerShell (pwsh) host, but
then the PowerShell shell must be exited and restarted to complete the upgrade.
and refresh the values shown in $PSVersionTable.

Installing PowerShell using the Homebrew tap method is also supported for stable
and LTS versions.

brew install powershell/tap/powershell

You can now verify your install

pwsh

When new versions of PowerShell are released, run the following command.

brew upgrade powershell

Note
Whether you use the cask or the tap method, when updating to a newer version of
PowerShell, use the same method you used to initially install PowerShell. If you
use a different method, opening a new pwsh session will continue to use the older
version of PowerShell.

If you do decide to use different methods, there are ways to correct the issue using
the Homebrew link method.

Starting with version 7.2, PowerShell supports the Apple M1 processor. Download
the install package from the releases page onto your computer. The links to the
current versions are:

 PowerShell 7.3.2
o x64 processors - powershell-7.3.2-osx-x64.pkg
o M1 processors - powershell-7.3.2-osx-arm64.pkg
 PowerShell 7.2.9
o x64 processors - powershell-7.2.9-osx-x64.pkg
o M1 processors - powershell-7.2.9-osx-arm64.pkg

You can double-click the file and follow the prompts, or install it from the terminal
using the following commands. Change the name of the file to match the file you
downloaded.

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

If you are running on macOS Big Sur 11.5 or higher you may receive the following
error message when installing the package:

"powershell-7.3.2-osx-x64.pkg" cannot be opened because Apple cannot check it


for malicious software.

There are two ways to work around this issue:

Using the Finder

1. Find the package in Finder.


2. Control-click (click while pressing the Ctrl key) on the package.
3. Select Open from the context menu.

From the command line

1. Run sudo xattr -rd com.apple.quarantine powershell-7.3.2-osx-x64.pkg.


Include the full path to the .pkg file.
2. Install the package as you normally would.

Note
This is a known issue related to package notarization that will be addressed in the
future.

If you already have the .NET Core SDK installed, it's easy to install PowerShell as
a .NET Global tool.

dotnet tool install --global PowerShell

The dotnet tool installer adds ~/.dotnet/tools to your PATH environment variable.


However, the currently running shell doesn't have the updated PATH. You should be
able to start PowerShell from a new shell by typing pwsh.

PowerShell binary tar.gz archives are provided for the macOS platform to enable


advanced deployment scenarios. When you install using this method you must also
manually install any dependencies.

Note

You can use this method to install any version of PowerShell including the latest:

 Stable release: https://aka.ms/powershell-release?tag=stable
 LTS release: https://aka.ms/powershell-release?tag=lts
 Preview release: https://aka.ms/powershell-release?tag=preview

Installing binary archives on macOS


Download the install package from the releases page onto your computer. The
links to the current versions are:

 PowerShell 7.3.2
o x64 processors - powershell-7.3.2-osx-x64.tar.gz
o M1 processors - powershell-7.3.2-osx-arm64.tar.gz
 PowerShell 7.2.9
o x64 processors - powershell-7.2.9-osx-x64.tar.gz
o M1 processors - powershell-7.2.9-osx-arm64.tar.gz

Use the following commands to install PowerShell from the binary archive.
Change the download URL to match the version you want to install.

# Download the powershell '.tar.gz' archive


curl -L -o /tmp/powershell.tar.gz
https://github.com/PowerShell/PowerShell/releases/download/v7.3.2/
powershell-7.3.2-osx-x64.tar.gz
# Create the target folder where powershell is placed
sudo mkdir -p /usr/local/microsoft/powershell/7.3.2

# Expand powershell to the target folder


sudo tar zxf /tmp/powershell.tar.gz -C
/usr/local/microsoft/powershell/7.3.2

# Set execute permissions


sudo chmod +x /usr/local/microsoft/powershell/7.3.2/pwsh

# Create the symbolic link that points to pwsh


sudo ln -s /usr/local/microsoft/powershell/7.3.2/pwsh /usr/local/bin/pwsh

If you installed PowerShell with Homebrew, use the following command to


uninstall:

brew uninstall --cask powershell

If you installed PowerShell via direct download, PowerShell must be removed


manually:

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

To remove the additional PowerShell paths, refer to the paths section in this


document and remove the paths using sudo rm.

Note

This isn't necessary if you installed with Homebrew.

 $PSHOME is /usr/local/microsoft/powershell/7.3.2/
 User profiles are read from ~/.config/powershell/profile.ps1
 Default profiles are read from $PSHOME/profile.ps1
 User modules are read from ~/.local/share/powershell/Modules
 Shared modules are read from /usr/local/share/powershell/Modules
 Default modules are read from $PSHOME/Modules
 PSReadLine history are recorded
to ~/.local/share/powershell/PSReadLine/ConsoleHost_history.txt

The profiles respect PowerShell's per-host configuration. So the default host-


specific profile exists at Microsoft.PowerShell_profile.ps1 in the same locations.

PowerShell respects the XDG Base Directory Specification on macOS.


Because macOS is a derivation of BSD, the prefix /usr/local is used instead
of /opt. So, $PSHOME is /usr/local/microsoft/powershell/7.3.2/, and the symbolic
link is placed at /usr/local/bin/pwsh.

The following table contains a list of PowerShell releases and the status of support
for versions of macOS. These versions remain supported until either the version
of PowerShell reaches end-of-support or the version of macOS reaches end-of-
support.

 The   icon indicates that the version of the OS or PowerShell is still


supported
 The   icon indicates the version of PowerShell is no longer supported on
that version of the OS
 The   icon indicates that we haven't finished testing PowerShell on that
OS
 The   icon indicates that the version of the OS or PowerShell isn't
supported
 When both the version of the OS and the version of PowerShell have a 
icon, that combination is supported

macOS 12 (Monterey) and macOS 13 (Ventura) have not been tested.

Support of macOS is defined by Apple. For more information, see:

 macOS release notes


 Apple Security Updates

PowerShell is supported on macOS for the following processor architectures:

macOS 7.2 (LTS-current) 7.3 7.4 (preview)


macOS Big Sur 11.5 x64, Arm64 x64, Arm64 x64, Arm64

Microsoft supports the installation methods in this document. There may be other
methods of installation available from other sources. While those tools and
methods may work, Microsoft can't support those methods.

 Homebrew Web
 Homebrew GitHub Repository
 Homebrew-Cask

You might also like