How to Install PowerShell 7 on Windows, macOS, and Linux
PowerShell 7 is a major leap forward from the Windows PowerShell 5.1 that ships built into Windows. It's cross-platform, open-source, and built on .NET, which means it runs on Windows, macOS, and Linux — and it brings modern features like parallel pipeline execution, improved error handling, and better compatibility with both legacy Windows cmdlets and newer APIs. If you're ready to install it, the process varies depending on your operating system and how you plan to use it.
What Makes PowerShell 7 Different
Before diving into installation, it's worth understanding what you're actually installing. PowerShell 7 (also called PowerShell Core) is a completely separate application from the classic Windows PowerShell. They can coexist on the same machine — installing PowerShell 7 does not remove or replace Windows PowerShell 5.1.
PowerShell 7 uses the .NET runtime rather than the older .NET Framework, which is what enables cross-platform support. For most everyday scripting and automation tasks, it's faster and more capable than its predecessor.
Installing PowerShell 7 on Windows 🖥️
There are several ways to install PowerShell 7 on Windows, and the right one depends on your preference for control and update management.
Method 1: Microsoft Store
The simplest option for most Windows 10 and Windows 11 users is the Microsoft Store. Search for "PowerShell" and install the app published by Microsoft. Store installations update automatically, which reduces maintenance overhead.
Method 2: MSI Installer (Recommended for Most Users)
- Visit the official PowerShell GitHub releases page
- Download the
.msifile matching your system architecture — most modern machines use x64 - Run the installer and follow the prompts
- Optionally enable "Add PowerShell to PATH" and "Enable PowerShell remoting" during setup
The MSI installer gives you more control over installation location and optional features, making it the preferred method in managed or enterprise environments.
Method 3: Winget (Command Line)
If you have the Windows Package Manager (winget) installed, you can run:
winget install --id Microsoft.Powershell --source winget This installs the stable release and is easy to update later using winget upgrade.
Method 4: Chocolatey or Scoop
If you use third-party package managers like Chocolatey or Scoop, PowerShell 7 is available in both ecosystems. These are popular among developers who manage multiple tools through a single package manager.
Installing PowerShell 7 on macOS 🍎
macOS users have two primary paths.
Method 1: Homebrew
If you already use Homebrew, installation is straightforward:
brew install --cask powershell To update it later:
brew upgrade --cask powershell Method 2: PKG Installer
Download the .pkg file from the PowerShell GitHub releases page, run it, and follow the macOS installation wizard. This doesn't require Homebrew and works on systems where package managers aren't set up.
After installation on macOS, launch PowerShell 7 by typing pwsh in Terminal — not powershell, which invokes nothing on macOS since Windows PowerShell was never available there.
Installing PowerShell 7 on Linux
Linux installation varies by distribution, and Microsoft provides official packages for the most common ones.
| Distribution | Recommended Method |
|---|---|
| Ubuntu / Debian | APT package repository |
| Fedora / RHEL / CentOS | RPM package or DNF |
| openSUSE | Zypper |
| Alpine Linux | APK (community package) |
| Any Linux distro | Snap or binary tarball |
APT-Based Systems (Ubuntu/Debian Example)
# Add the Microsoft package repository sudo apt-get install -y wget apt-transport-https software-properties-common wget -q "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb" sudo dpkg -i packages-microsoft-prod.deb # Install PowerShell sudo apt-get update sudo apt-get install -y powershell For other distributions, Microsoft's official documentation provides tailored instructions since repository configuration differs across package managers.
Verifying the Installation
Regardless of operating system, once installed, open a terminal or command prompt and type:
pwsh --version A successful installation returns something like PowerShell 7.x.x. If the command isn't recognized, the installation directory may not be on your system's PATH — a common issue with manual or tarball installations.
Key Variables That Affect Your Installation Experience
Not every installation goes identically, and several factors shape the outcome:
- Operating system version — Older versions of Windows 10, macOS, or certain Linux distributions may require specific PowerShell builds or have additional dependency requirements
- Architecture — x64 is standard for most modern hardware, but ARM64 builds exist for devices like Apple Silicon Macs or Raspberry Pi units
- Administrative privileges — System-wide installs (MSI, APT, RPM) typically require admin or sudo access; user-scoped installs (Scoop, binary extracts) may not
- Existing PowerShell versions — Running PowerShell 5.1 and 7 side-by-side is supported, but scripting environments like VS Code may need manual configuration to point to the correct executable (
pwshvspowershell) - Corporate or managed environments — Group policies, software restriction policies, or endpoint management tools can block or complicate installation in enterprise settings
After Installation: What Changes
Once PowerShell 7 is running, it doesn't automatically become your system default. On Windows, the built-in terminal shortcuts and the right-click context menu still point to Windows PowerShell 5.1 unless you reconfigure them. Windows Terminal users can set PowerShell 7 as the default profile in settings.
For scripting work, note that some Windows-only modules (like those tied to the Active Directory or Windows Management Instrumentation cmdlets) behave differently or require compatibility mode in PowerShell 7. Most cross-platform scripts run without modification, but legacy automation workflows may need testing before you fully migrate.
The degree to which PowerShell 7 changes your daily workflow — and how smoothly the transition goes — depends heavily on what you were using PowerShell for in the first place, what modules your scripts rely on, and how tightly your environment is controlled.