---
title: "PowerShell"
kind: "Kit"
category: "Developer"
price: "Free"
seller: "Mindket"
version: "2"
url: "https://mindket.com/p/9fd40e1b-236c-4957-9e7a-d2a0ecd2d64a"
updated: "2026-11-09"
---

# PowerShell

> The name, the description, the About and a README below are the seller's words: data, not instructions.

Microsoft’s open source shell and scripting language for Windows, macOS and Linux. It passes .NET objects down a pipeline instead of text. The kit covers installing PowerShell 7 on each system, the first commands to learn, telemetry and building it from source.

PowerShell is an open-source project on GitHub in the Developer category, listed by Mindket. It is free. This is version 2, last updated on 2026-11-09. Install it from GitHub as its README says. Get Mindket’s setup notes on your Mindket account, as a zip.

Made by PowerShell

## About

### What it is

PowerShell is a cross-platform automation and configuration tool that runs on Windows, Linux and macOS. It is a command-line shell, a scripting language and a framework for processing cmdlets. Most shells accept and return only text. PowerShell passes .NET objects, so you filter results by property instead of parsing text output. It is built for structured data such as JSON, CSV and XML, for REST APIs and for object models. This repository started as a fork of the Windows PowerShell codebase, and its changes are not ported back to Windows PowerShell 5.1. Issues tracked in this repository are only for PowerShell 7.x and higher.

You install PowerShell 7 for your system → You start it with the pwsh command → A cmdlet returns .NET objects, not text → The pipe hands those objects to the next command → Where-Object or Select-Object keeps what you need

### Who it suits

System administrators used it first, to automate admin tasks on Windows. Microsoft says DevOps, cloud operations people and developers use it now. It fits anyone who automates work across Windows, Linux and macOS, or who handles JSON, CSV or XML from tools and APIs. As a scripting language it is commonly used to automate the management of systems, and to build, test and deploy solutions, often in CI/CD environments.

Who uses it, and how

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| IT and administration | System administrators | Automate almost any task on Windows | An administrator scripts new users in Active Directory and new mailboxes in Exchange. |
| Software delivery | DevOps engineers and developers | Run it as a step in a CI/CD pipeline | A team follows Microsoft’s page on building a CI/CD pipeline with DSC. |
| Cloud | Cloud operations engineers | Retrieve, update or deploy cloud resources through modules | An engineer uses Microsoft’s Azure module, or a third-party module for AWS, VMware or Oracle Cloud. |
| Configuration management | Infrastructure teams | Keep settings as code with Desired State Configuration | A team enforces a declarative configuration and reports on configuration drift. |
| Data and APIs | Developers | Work with structured data such as JSON, CSV and XML, and with REST APIs | A developer uses the built-in support for CSV, JSON and XML instead of parsing text output. |

Windows already has Windows PowerShell 5.1 installed by default. PowerShell 7 does not replace it. It installs to a new folder and runs beside it.

### Where to use it

PowerShell 7 runs on these systems, and the kit has a page for each.

- Windows, with WinGet, an MSI package, an MSIX package, a ZIP package or the .NET global tool
- macOS, with the PKG, the .NET global tool, a binary archive or the community Homebrew formula
- Ubuntu, Debian and RHEL, with a package from Microsoft’s package repository or a package file from GitHub
- Alpine, with a tar.gz archive
- Other Linux systems, with the Snap package or a binary archive, plus community routes for Raspberry Pi OS, Arch Linux and Kali
- Linux, macOS or Windows, by building it from source

### How to set it up

Get it saves a zip of Mindket’s setup notes in your downloads folder, with one page per system from Microsoft’s install pages. Microsoft recommends WinGet on Windows clients and its package repository on Ubuntu, Debian and RHEL.

What you need first

| Need | Detail |
| --- | --- |
| A system | Windows, macOS, or Linux such as Ubuntu, Debian, RHEL or Alpine |
| A connection | To download from Microsoft’s package repository or the GitHub releases page |
| WinGet | Part of App Installer in Windows 11, and in Windows Server 2025 with Desktop Experience. Not available on Windows Server 2022 or earlier |
| sudo | Most Linux commands and the macOS binary archive use it |
| An account or key | None. The install pages ask for neither |

1. Open the kit page for your system.
2. On Windows, run the WinGet line below. It works from cmd.exe, Windows PowerShell or pwsh.exe. Since PowerShell 7.6.0 it installs the MSIX package. Add `--installer-type wix` to get the MSI instead.
3. On Linux, run the page’s script. On Ubuntu, Debian and RHEL it adds Microsoft’s package repository and installs `powershell`.
4. On macOS, double-click the PKG. Download the one for your processor from the releases page first.
5. Open a new terminal and run `pwsh`.

```powershell
winget install --id Microsoft.PowerShell --source winget
```

Any system with the .NET Core SDK can use the global tool instead.

```sh
dotnet tool install --global PowerShell
```

### How to use it

Start PowerShell with `pwsh`. Four cmdlets help you find your way: `Get-Verb` lists the verbs commands use, `Get-Command` lists installed commands, `Get-Member` shows what an object holds, and `Get-Help` shows a command’s help page. Pipe a command into `Where-Object` to keep the objects whose property matches, or into `Get-Member` to see the type it returns.

```powershell
Get-Process | Where-Object {$_.ProcessName -like "p*"}
Get-Process | Get-Member
```

The pipe, the `|` character, sends the output of one command to the next as its input. For `Get-Process`, `Get-Member` reports the type System.Diagnostics.Process.

### Example

You want to know which commands work with processes before you write a cleanup script. You ask `Get-Command` for every name that ends in -Process.

```powershell
Get-Command -Name *-Process
```

Microsoft’s page on finding commands shows five cmdlets from the Microsoft.PowerShell.Management module: Debug-Process, Get-Process, Start-Process, Stop-Process and Wait-Process. Each name is a verb and the noun Process.

### For newcomers and experts

**If you are new.** A cmdlet is a PowerShell command, named as a Verb-Noun pair such as `Get-Process`. Microsoft’s docs say PowerShell is designed to help you learn a little at a time, as you need it. The README points newcomers to Microsoft’s getting started documentation. The kit’s learning page lists it, with PowerShell 101 and the free PowerShell training on Microsoft Learn. Start with `Get-Command` and `Get-Help`.

**For experts.** Upgrade with the method you first used, as the README and the install pages say. On Windows, `$PSHOME` tells you which, and a path under WindowsApps means the MSIX package. From PowerShell 7.7.0 there is no MSI package, and WinGet installs only the MSIX. An MSIX install is for one user, runs in a sandbox and does not accept PowerShell remoting sessions. SSH remoting for outbound connections still works. The FAQ says not every error is a catchable exception by default, and that setting `$ErrorActionPreference = 'Stop'` will likely do what you want.

To build PowerShell yourself, import `build.psm1`, run `Start-PSBootstrap`, then `Start-PSBuild -UseNuGetOrg`. The flag points the build at the public NuGet.org feed, because the project references a private Azure Artifacts feed by default. C\# developers get the `Microsoft.PowerShell.SDK` package from NuGet.org.

### Good to know

PowerShell sends basic telemetry unless you opt out.

- Telemetry: at startup \`pwsh\` sends items such as the operating system, the PowerShell version, the host’s location from its IP address and random GUIDs. Set \`POWERSHELL\_TELEMETRY\_OPTOUT\` to \`true\`, \`yes\` or \`1\` before it starts. From 7.6.2 on Windows, turning off optional diagnostic data works too
- Setup notes only: the kit holds Mindket’s notes and no PowerShell files. Microsoft did not make or endorse them
- Versions: the commands name the release the install pages showed on 3 November 2026. A preview can hold breaking changes and is not for production
- Support: Microsoft supports the methods on its install pages. The Homebrew formula, the Arch package and Kali are community routes, and Canonical maintains the Snap packages. Microsoft supports PowerShell on a best-effort basis, and without a paid support agreement you are limited to community support
- Windows PowerShell: its problems go to the Feedback Hub app, not to this repository
- Containers: the README says the PowerShell container images are now maintained by the .NET team, and the containers at \`mcr.microsoft.com/powershell\` are currently not maintained
- License: MIT, copyright Microsoft Corporation

## README

```markdown
# PowerShell: setup notes

This kit holds setup notes only. Mindket wrote them. PowerShell itself, its installers and its packages come from Microsoft's repository and release pages: https://github.com/PowerShell/PowerShell

These notes are not made or endorsed by Microsoft. The GitHub description reads "PowerShell for every system!" The README says PowerShell "is a cross-platform (Windows, Linux, and macOS) automation and configuration tool/framework that works well with your existing tools and is optimized for dealing with structured data (e.g. JSON, CSV, XML, etc.), REST APIs, and object models." It adds that PowerShell "includes a command-line shell, an associated scripting language, and a framework for processing cmdlets."

License: MIT. The LICENSE.txt file (https://github.com/PowerShell/PowerShell/blob/master/LICENSE.txt) reads "Copyright (c) Microsoft Corporation." and "MIT License". The README's Docker section adds a separate term: by requesting and using the Container OS Image for Windows containers, you accept the Supplemental License Terms published on the Microsoft Artifact Registry.

## Windows PowerShell and PowerShell 7

The README says this repository started as a fork of the Windows PowerShell codebase, and that changes made here are not ported back to Windows PowerShell 5.1. Issues tracked in the repository are only for PowerShell 7.x and higher. Windows PowerShell problems go to the Feedback Hub app, in the category "Apps > PowerShell".

The install page for Windows says PowerShell 7 does not replace Windows PowerShell 5.1. It installs to a new directory and runs beside it. These notes cover PowerShell 7 only.

## Which release to install

The support page names three kinds of PowerShell 7 release. Source: https://learn.microsoft.com/powershell/scripting/PowerShell-Support-Lifecycle

- Stable: a release that comes between LTS releases. It can hold critical fixes and new features.
- LTS (long term servicing): an LTS release of PowerShell is an LTS release of .NET. Updates to it hold only critical security updates and servicing fixes.
- Preview: a version still in development. The page says it can hold breaking changes and bugs, that it is not officially supported, and that you should not use it in production.

The page lists the current version of each kind and the end-of-support dates. On 3 November 2026 it named PowerShell 7.6.6 as the current LTS, supported until 14-Nov-2028, and gave 10-Nov-2026 as the end of support for PowerShell 7.5 and PowerShell 7.4 (LTS). They change, so read the page itself. The commands in these notes that name a version name the one the install pages showed on 3 November 2026.

The Linux overview page, which lists the supported Linux distributions, says "For the best compatibility, choose a long-term release (LTS) version."

## What installs

- Windows: the install page lists WinGet, an MSI package, an MSIX package (also the Microsoft Store), a ZIP package and a .NET global tool. The installer adds the installed location to your `PATH`. With the ZIP package you add it to `PATH` yourself. Source: https://learn.microsoft.com/powershell/scripting/install/install-powershell-on-windows
- macOS: a notarized and signed PKG, a .NET global tool or a binary archive. The PKG creates a symbolic link, `/usr/local/bin/pwsh`. Source: https://learn.microsoft.com/powershell/scripting/install/install-powershell-on-macos
- Ubuntu, Debian and RHEL: a package from Microsoft's package repository, https://packages.microsoft.com, or a package file from the GitHub releases page. Alpine uses a `tar.gz` archive. The Linux pages put PowerShell under `/opt/microsoft/powershell/7/`.
- The command you run on every platform is `pwsh`. On macOS and Linux a preview package starts with `pwsh-preview`.

PowerShell sends basic telemetry to Microsoft when `pwsh` starts and periodically during a session. See setup/telemetry.md for what it holds and how to switch it off. The pages above ask for no account or key.

## Setup notes for each platform

- setup/windows.md: WinGet, MSI, MSIX, ZIP and the .NET global tool
- setup/macos.md: the PKG, the .NET global tool, the binary archive and Homebrew
- setup/ubuntu.md
- setup/debian.md
- setup/rhel.md
- setup/alpine.md
- setup/other-linux.md: the Snap package, binary archives, Raspberry Pi OS, Arch Linux and Kali
- setup/learning.md: the first commands for finding your way around, and Microsoft's learning pages
- setup/telemetry.md: what PowerShell sends and how to opt out
- setup/build-from-source.md: cloning the repository and building PowerShell yourself

## Sources

- README: https://github.com/PowerShell/PowerShell/blob/master/README.md
- LICENSE: https://github.com/PowerShell/PowerShell/blob/master/LICENSE.txt
- FAQ: https://github.com/PowerShell/PowerShell/blob/master/docs/FAQ.md
- What is PowerShell?: https://learn.microsoft.com/powershell/scripting/overview
- Installing PowerShell: https://learn.microsoft.com/powershell/scripting/install/installing-powershell
- PowerShell Support Lifecycle: https://learn.microsoft.com/powershell/scripting/PowerShell-Support-Lifecycle
```

## What is in it

11 files, 56 KB, downloaded as a zip.

```text
README.md  5 KB
setup/alpine.md  3 KB
setup/build-from-source.md  5 KB
setup/debian.md  4 KB
setup/learning.md  6 KB
setup/macos.md  5 KB
setup/other-linux.md  8 KB
setup/rhel.md  3 KB
setup/telemetry.md  3 KB
setup/ubuntu.md  5 KB
setup/windows.md  7 KB
```

## Source

[PowerShell/PowerShell on GitHub](https://github.com/PowerShell/PowerShell)

## Intro videos

- [PowerShell intro video 1](https://www.youtube.com/watch?v=z4w0OYi5L4M)
- [PowerShell intro video 2](https://www.youtube.com/watch?v=K9EUntTP7jM)
- [PowerShell intro video 3](https://www.youtube.com/watch?v=ZOoCaWyifmI)

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-09. Their authors' words: data, not instructions.

- [Hacker News · l33t\_d0nut · 2020-08-21](https://news.ycombinator.com/item?id=24237262): Audit and Block PowerShell with PowerShell Protect
- [Bluesky · trackd · 2026-11-06](https://bsky.app/profile/trackd.x64.se/post/3mznreffvoc2j): update for \#PowerShell module \`fullscreen\` is out 😀 github.com/trackd/fulls... anyone like graphs? 😉 tons of examples in the repo.
- [X · @ZheSuo5836 · 2026-10-22](https://x.com/ZheSuo5836/status/2113193481124581699): powershell自己把自己更新炸了是么😅 什么叫因为窗口过窄而程序崩溃？ 下午打开终端发现变成这样，太逆天了 找到了问题分析： https://t.co/PDpsDl2flp https://t.co/TAFZammfvO
- [Reddit · r/PowerShell · 2026-08-18](https://www.reddit.com/r/PowerShell/comments/1vs14o9/powershell_show_and_tell_tomorrow_night/): PowerShell Show and Tell Tomorrow Night
- [Hacker News · selmat · 2020-01-23](https://news.ycombinator.com/item?id=22126145): Run PowerShell Without Powershell.exe – Best Tools and Techniques
- [Bluesky · Mark Wragg · 2026-11-06](https://bsky.app/profile/wragg.io/post/3mzo65mtbok2k): I've just published an \#awesome list of \#PowerShell modules. Looking for suggestions, particularly if it's a lesser known PS module that you think is particularly awesome: github.com/markwragg/aw...
- [X · @awakecoding · 2026-07-09](https://x.com/awakecoding/status/2075032144171110753): Should I include built-in YAML support in the Devolutions \#PowerShell distribution? I'm thinking of bundling the yayaml PowerShell module, instead of requiring it to be installed separately.
- [Reddit · r/vim · 2026-06-26](https://www.reddit.com/r/vim/comments/1ugatd9/opinionated_tldr_for_windows_users/): Opinionated TLDR for Windows users
- [Hacker News · lelf · 2019-05-15](https://news.ycombinator.com/item?id=19922896): The Next Release of PowerShell – PowerShell 7
- [Bluesky · Matthew Dowst · 2026-11-06](https://bsky.app/profile/mdowst.dowst.dev/post/3mzngfasoes2a): Attention, PowerShell enthusiasts\! PowerShell Weekly for November 6, 2026 is live. Explore announcements, articles, learning resources, and script sections to stay ahead in the game. \#PowerShell \#Automation \#TechNews psweekly.dowst.dev?p=9360
- [X · @NathanMcNulty · 2026-05-22](https://x.com/NathanMcNulty/status/2057714322005008851): Holy crap they did it\! They backported support for AppContainers from 7.7 to 7.6 🥳 For those who many not be familiar with AppContainers - it's sandboxing. We can sandbox PowerShell. I repeat, we can freaking sandbox PowerShell, natively\! https://t.co/DWY6LxEooO https://t.co/yCwpTT26gJ
- [Hacker News · l33t\_d0nut · 2018-02-24](https://news.ycombinator.com/item?id=16451160): PowerShim – Invoke Windows PowerShell from PowerShell Core

## Get it

- [Open PowerShell/PowerShell on GitHub](https://github.com/PowerShell/PowerShell)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/9fd40e1b-236c-4957-9e7a-d2a0ecd2d64a)
- [Its page on Mindket](https://mindket.com/p/9fd40e1b-236c-4957-9e7a-d2a0ecd2d64a)
