# PowerShell

Published January 1, 2026 · Updated August 10, 2026

Cross-platform command-line shell and scripting language

Category: Developer Tools · Free · [Official website](https://microsoft.com/powershell)

## Install with Homebrew

`brew install powershell`

## Quick take

On Mac in August 2026, PowerShell is mature, free, and supported through macOS Tahoe with 7.6 LTS packages (7.6.4) and notarized installers. It will not replace zsh for general Mac development. For Azure, Microsoft 365, Windows remoting, and object-pipeline automation it still has no real peer. Install the arm64 build, keep it beside your Unix shell, and stop cargo-culting Gatekeeper bypasses on current packages.

Best for: Cloud and DevOps engineers managing Azure or AWS, IT administrators working with Microsoft 365, Developers building cross-platform automation scripts

## What is PowerShell?

PowerShell is Microsoft's cross-platform shell and scripting language. It runs on macOS, Linux, and Windows. You install it on a Mac when you manage Windows servers, work with Azure or Microsoft 365, or want object pipelines for structured data that bash handles poorly.

As of August 2026, PowerShell on Mac is current and supported. Microsoft Learn's install guide (updated July 2026) lists PowerShell 7.6.4 (LTS) and 7.5.9 packages for macOS arm64 and x64, with 7.4.x LTS still available and 7.7 previews on the release train. Homebrew's powershell formula reports stable 7.6.4 with bottles for macOS Tahoe on Apple Silicon plus Sequoia and Sonoma. Beginning with the May 2026 releases, macOS PKG packages are notarized and signed by Microsoft, which removes a class of Gatekeeper friction that plagued earlier side-load instructions. Supported macOS versions explicitly include macOS 26 (Tahoe), macOS 15 (Sequoia), and macOS 14 (Sonoma) on both Arm64 and x64.

The main difference from bash, zsh, or fish is the pipeline: PowerShell passes .NET objects, not text streams. Cmdlets like Where-Object and Select-Object filter on properties, so process lists, REST responses, and cloud inventory break less often than regex-over-text pipelines. On a Mac it rarely replaces zsh as the default interactive login shell for app developers. For cross-platform automation shared with Windows teams, and for Azure or Graph admin work, it remains the pragmatic standard.

PowerShell is free and open source under the MIT License. There is no paid "Pro shell". What costs money is the cloud estate you manage with it. If your Mac never touches Microsoft ecosystems, you can ignore PowerShell entirely. If it does, install the arm64 build and keep `pwsh` a keystroke away.

Install notes that still trip people up: prefer the notarized PKG or current Homebrew bottles over old blog posts that teach Gatekeeper bypasses. After install, run `Update-Help` once so offline help matches 7.6.x, and create `~/.config/powershell/Microsoft.PowerShell_profile.ps1` if you want aliases and PSReadLine predictions every session. Preview builds remain available via `brew install powershell/tap/powershell-preview` when you need to test 7.7-train behaviour before it hits stable.

## Features

- **Object-Oriented Pipelines.** Commands pass .NET objects instead of raw text. `Get-Process | Where-Object CPU -gt 100` filters process objects by the CPU property; you are not scraping columns with regex. Format changes that break bash pipelines usually leave PowerShell scripts intact.
- **Cross-Platform Consistency.** Scripts written on macOS generally run on Windows and Linux without edits (aside from OS-specific paths). DevOps teams managing mixed fleets can share one automation codebase across servers.
- **Native Structured Data Support.** JSON, CSV, XML, and YAML are first-class. `ConvertFrom-Json` turns API responses into queryable objects; `Export-Csv` serializes data without reaching for external tools. REST and config-file work needs fewer glue utilities than typical bash setups.
- **Predictive IntelliSense.** PowerShell 7.6+ can suggest the next command, parameters, and values from history and context as you type. That cuts keystrokes and surfaces cmdlets you might not remember.
- **Parallel Processing with ForEach-Object.** `ForEach-Object -Parallel` runs batch work across threads: files, API calls, or server configs. Pair it with `Start-Job` when you need background jobs for longer workloads.
- **Unified Cloud Management.** Official modules cover major clouds: Az for Azure, AWSPowerShell for AWS, and GoogleCloud for GCP. Auth, error handling, and resource cmdlets stay in one shell instead of juggling three CLIs with different output shapes.

## Install PowerShell on Mac

Install PowerShell on macOS via Homebrew, the official notarized PKG (preferred since May 2026 builds), .NET global tool, or binary archive. Current stable LTS highlighted in docs: 7.6.4. Current non-LTS stable packages include 7.5.9.

1. **Install Homebrew.** Common Mac path: install via Homebrew (`brew install powershell` / the powershell tap as documented), then run `pwsh`. Homebrew lists stable 7.6.4 with Tahoe support on Apple Silicon.
2. **Install PowerShell Stable.** Or run `brew install powershell` for the latest stable cask build with Homebrew-managed updates.
3. **Launch PowerShell.** Open a new terminal and type `pwsh`. The PS prompt means you are inside PowerShell.
4. **Verify Installation.** Run `$PSVersionTable` and confirm PowerShell 7.6+ with PSEdition showing Core for the cross-platform build.

## Pros

- Object pipelines replace fragile grep/awk/sed parsing for structured data
- Same scripts run on Mac, Windows, and Linux with few path tweaks
- Official Azure, AWS, and GCP modules for cloud admin
- Verb-Noun naming and Get-Help make discovery easier than ad-hoc flags
- Try/Catch/Finally error handling familiar to programmers

## Cons

- Slower startup than Bash or Zsh, though improved in v7.6+
- Verbose cmdlet names (Get-ChildItem vs ls) mean more typing without aliases
- Not POSIX-compliant, so bash scripts need adaptation

## Closer look: PowerShell on Mac

How PowerShell moved from a Windows-only admin shell to a cross-platform automation tool that Mac users actually install for cloud and Microsoft 365 work.

## FAQ

### Is PowerShell available for Mac?

Yes. PowerShell 7+ runs on macOS with native Apple Silicon (M1/M2/M3/M4) packages. Install via Homebrew with `brew install --cask powershell`, then launch with `pwsh`.

### What is the difference between PowerShell and Bash?

PowerShell pipelines pass .NET objects; Bash pipelines pass text you must parse. PowerShell also uses Verb-Noun naming, built-in help, and native JSON/XML cmdlets. Bash wins for POSIX scripts and classic Unix glue.

### Is PowerShell free to use?

PowerShell itself is free under the MIT License. Cloud services you manage with it may cost money.

### Should I use PowerShell or Zsh on Mac?

Use Zsh for general interactive terminal work and Unix tools. Use PowerShell for structured data, Azure/M365 admin, or scripts that must run on Mac and Windows. Many people keep both and switch by task.

### Can I run bash scripts in PowerShell?

Not directly; PowerShell is not POSIX-compliant. Call bash with `bash -c 'your-command'` or invoke a .sh file. Simple aliases like `ls` map to cmdlets such as `Get-ChildItem` for interactive use.

### Which PowerShell version should Mac users install in August 2026?

Prefer 7.6.4 LTS for production automation, or 7.5.9 if you explicitly want the current non-LTS stable line documented beside it. Both have arm64 and x64 macOS packages on Microsoft Learn. Homebrew's stable formula tracks 7.6.4 with Tahoe bottles on Apple Silicon.

## Sources

- [Install PowerShell on macOS](https://learn.microsoft.com/en-us/powershell/scripting/install/install-powershell-on-macos?view=powershell-7.6)
- [PowerShell GitHub Releases](https://github.com/PowerShell/PowerShell/releases)
- [Homebrew Formula powershell](https://formulae.brew.sh/formula/powershell)
- [PowerShell Documentation](https://learn.microsoft.com/en-us/powershell/)
- [PowerShell Support Lifecycle](https://learn.microsoft.com/en-us/powershell/scripting/install/powershell-support-lifecycle)
- [PowerShell stable releases portal](https://aka.ms/powershell-release?tag=stable)

## Related

- [Cursor](https://bundl.run/apps/cursor)
- [Claude Code](https://bundl.run/apps/claude-code)
- [ChatGPT](https://bundl.run/apps/chatgpt)
- [Claude](https://bundl.run/apps/claude)
- [Codex](https://bundl.run/apps/codex)
- [Windsurf](https://bundl.run/apps/windsurf)

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://bundl.run/#organization",
      "name": "Bundl.run",
      "url": "https://bundl.run",
      "logo": {
        "@type": "ImageObject",
        "url": "https://bundl.run/og-image.png",
        "width": 1200,
        "height": 630
      },
      "description": "The Ninite for Mac. Install all your essential Mac apps with one terminal command.",
      "sameAs": [
        "https://github.com/abhiofficial/bundl-mac-setup",
        "https://x.com/bundlrun",
        "https://www.producthunt.com/products/bundl-run"
      ],
      "foundingDate": "2024",
      "contactPoint": {
        "@type": "ContactPoint",
        "contactType": "customer support",
        "url": "https://bundl.run/faq"
      }
    },
    {
      "@type": "WebSite",
      "@id": "https://bundl.run/#website",
      "name": "Bundl.run",
      "url": "https://bundl.run",
      "description": "The Ninite for Mac. Install all your essential Mac apps with one terminal command.",
      "publisher": {
        "@id": "https://bundl.run/#organization"
      },
      "inLanguage": "en-US"
    },
    {
      "@type": "Person",
      "@id": "https://bundl.run/authors/alex-chen#person",
      "name": "Alex Chen",
      "jobTitle": "Senior Developer Tools Specialist",
      "url": "https://bundl.run/authors/alex-chen",
      "worksFor": {
        "@id": "https://bundl.run/#organization"
      },
      "description": "Alex Chen has been evaluating developer tools and productivity software for over 12 years, with deep expertise in code editors, terminal emulators, and development environments. As a former software engineer at several Bay Area startups, Alex brings hands-on experience with the real-world workflows these tools are meant to enhance. Alex tests each application extensively on both Intel and Apple Silicon Macs, documenting performance metrics, integration capabilities, and workflow efficiency. When not reviewing software, Alex contributes to open-source projects and writes technical tutorials for the developer community.",
      "knowsAbout": [
        "Code Editors & IDEs",
        "Terminal Emulators",
        "Version Control Tools",
        "DevOps & CI/CD",
        "API Development",
        "Performance Benchmarking"
      ],
      "image": "https://bundl.run/authors/alex-chen.svg"
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://bundl.run/apps/powershell#breadcrumb",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://bundl.run"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Apps",
          "item": "https://bundl.run/apps"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "PowerShell",
          "item": "https://bundl.run/apps/powershell"
        }
      ]
    },
    {
      "@type": "WebPage",
      "@id": "https://bundl.run/apps/powershell",
      "url": "https://bundl.run/apps/powershell",
      "name": "PowerShell for Mac",
      "description": "Cross-platform command-line shell and scripting language",
      "isPartOf": {
        "@id": "https://bundl.run/#website"
      },
      "publisher": {
        "@id": "https://bundl.run/#organization"
      },
      "inLanguage": "en-US",
      "datePublished": "2026-01-01T00:00:00Z",
      "dateModified": "2026-08-10T13:34:04.000Z",
      "author": {
        "@id": "https://bundl.run/authors/alex-chen#person"
      },
      "mainEntity": {
        "@id": "https://bundl.run/apps/powershell#software"
      },
      "breadcrumb": {
        "@id": "https://bundl.run/apps/powershell#breadcrumb"
      }
    },
    {
      "@type": "SoftwareApplication",
      "@id": "https://bundl.run/apps/powershell#software",
      "name": "PowerShell",
      "description": "Cross-platform command-line shell and scripting language",
      "applicationCategory": "DeveloperApplication",
      "operatingSystem": "macOS",
      "url": "https://bundl.run/apps/powershell",
      "image": {
        "@type": "ImageObject",
        "url": "https://img.logo.dev/microsoft.com",
        "caption": "PowerShell app icon for Mac"
      },
      "sameAs": [
        "https://microsoft.com/powershell",
        "https://formulae.brew.sh/formula/powershell"
      ],
      "review": {
        "@type": "Review",
        "author": {
          "@id": "https://bundl.run/authors/alex-chen#person"
        },
        "reviewBody": "On Mac in August 2026, PowerShell is mature, free, and supported through macOS Tahoe with 7.6 LTS packages (7.6.4) and notarized installers. It will not replace zsh for general Mac development. For Azure, Microsoft 365, Windows remoting, and object-pipeline automation it still has no real peer. Install the arm64 build, keep it beside your Unix shell, and stop cargo-culting Gatekeeper bypasses on current packages."
      },
      "about": {
        "@type": "Thing",
        "name": "PowerShell",
        "description": "Cross-platform command-line shell and scripting language"
      },
      "isPartOf": {
        "@id": "https://bundl.run/#website"
      }
    },
    {
      "@type": "Article",
      "@id": "https://bundl.run/apps/powershell#article",
      "headline": "PowerShell for Mac — Full Review & Installation Guide 2026",
      "description": "On Mac in August 2026, PowerShell is mature, free, and supported through macOS Tahoe with 7.6 LTS packages (7.6.4) and notarized installers. It will not replace zsh for general Mac development. For Azure, Microsoft 365, Windows remoting, and object-pipeline automation it still has no real peer. Install the arm64 build, keep it beside your Unix shell, and stop cargo-culting Gatekeeper bypasses on current packages.",
      "image": "https://img.logo.dev/microsoft.com",
      "author": {
        "@id": "https://bundl.run/authors/alex-chen#person"
      },
      "publisher": {
        "@id": "https://bundl.run/#organization"
      },
      "datePublished": "2026-01-01T00:00:00Z",
      "dateModified": "2026-08-10T13:34:04.000Z",
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://bundl.run/apps/powershell"
      },
      "articleSection": "DeveloperApplication",
      "speakable": {
        "@type": "SpeakableSpecification",
        "cssSelector": [
          "h1",
          ".key-facts"
        ]
      },
      "about": {
        "@type": "SoftwareApplication",
        "name": "PowerShell",
        "url": "https://bundl.run/apps/powershell"
      }
    },
    {
      "@type": "FAQPage",
      "@id": "https://bundl.run/apps/powershell#faq",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Is PowerShell available for Mac?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. PowerShell 7+ runs on macOS with native Apple Silicon (M1/M2/M3/M4) packages. Install via Homebrew with `brew install --cask powershell`, then launch with `pwsh`."
          }
        },
        {
          "@type": "Question",
          "name": "What is the difference between PowerShell and Bash?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "PowerShell pipelines pass .NET objects; Bash pipelines pass text you must parse. PowerShell also uses Verb-Noun naming, built-in help, and native JSON/XML cmdlets. Bash wins for POSIX scripts and classic Unix glue."
          }
        },
        {
          "@type": "Question",
          "name": "Is PowerShell free to use?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "PowerShell itself is free under the MIT License. Cloud services you manage with it may cost money."
          }
        },
        {
          "@type": "Question",
          "name": "Should I use PowerShell or Zsh on Mac?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Use Zsh for general interactive terminal work and Unix tools. Use PowerShell for structured data, Azure/M365 admin, or scripts that must run on Mac and Windows. Many people keep both and switch by task."
          }
        },
        {
          "@type": "Question",
          "name": "Can I run bash scripts in PowerShell?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Not directly; PowerShell is not POSIX-compliant. Call bash with `bash -c 'your-command'` or invoke a .sh file. Simple aliases like `ls` map to cmdlets such as `Get-ChildItem` for interactive use."
          }
        },
        {
          "@type": "Question",
          "name": "Which PowerShell version should Mac users install in August 2026?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Prefer 7.6.4 LTS for production automation, or 7.5.9 if you explicitly want the current non-LTS stable line documented beside it. Both have arm64 and x64 macOS packages on Microsoft Learn. Homebrew's stable formula tracks 7.6.4 with Tahoe bottles on Apple Silicon."
          }
        }
      ],
      "isPartOf": {
        "@id": "https://bundl.run/apps/powershell"
      }
    }
  ]
}
```