This post is also available in: Italian

Reading Time: 2 minutes

PowerShell Core 6.0 is the new edition of the powerful Microsoft’s scripting language PowerShell. At the beginning, it was only for the latest version of Microsoft Windows operating systems, but in the last year has finally become cross-platform (Windows, macOS, and Linux), open-source, and built for heterogeneous environments and the hybrid cloud.

PowerShell Core uses .NET Core 2.0 as its runtime, that enables PowerShell Core to work on multiple platforms (Windows, macOS, and Linux). PowerShell Core also exposes the API set offered by .NET Core 2.0 to be used in PowerShell cmdlets and scripts. Windows PowerShell used the .NET Framework runtime to host the PowerShell engine. This means that Windows PowerShell exposes the API set offered by .NET Framework.

Of course, the goal of PowerShell Core is to remain as compatible as possible with Windows PowerShell.

Windows PowerShell is the edition of PowerShell built on top of .NET Framework (sometimes referred to as “FullCLR”). Because of its dependency on the .NET Framework, Windows PowerShell is only available on Windows (hence the name). The released versions of Windows PowerShell include 1.0, 2.0, 3.0, 4.0, 5.0, and 5.1. Windows PowerShell is launched as powershell.exe.

PowerShell Core is the edition of PowerShell built on top of .NET Core (sometimes simplified to “CoreCLR”) and it’s cross-platform, available on Windows, macOS, and Linux, thanks to the cross-platform nature of .NET Core. PowerShell Core is launched as pwsh.exe on Windows and pwsh on macOS and Linux.

PowerShell Core officially supports:

  • Windows 7, 8.1, and 10
  • Windows Server 2008 R2, 2012 R2, 2016
  • Windows Server Semi-Annual Channel
  • Ubuntu 14.04, 16.04, and 17.04
  • Debian 8.7+, and 9
  • CentOS 7
  • Red Hat Enterprise Linux 7
  • OpenSUSE 42.2
  • Fedora 25, 26
  • macOS 10.12+

Other Linux distribution may also work and be community supported.

There is also an experimental (unsupported) releases for the following platforms:

  • Windows on ARM32/ARM64
  • Raspbian (Stretch)

To download PowerShell Core:

Note: while PowerShell Core 6.0 is cross-platform, there is also a PowerShell Core 5.0/5.1 released exclusively as part of Microsoft Nano Server.

For more information see: