3 minute read

The PowerShell Team just dropped a bombshell!

Windows PowerShell is now a cross platform technology with the availability of PowerShell on Linux and Mac !! …. AND…. The PowerShell team is Open Sourcing Windows PowerShell (.Net) and PowerShell Core (.Net Core) !! This is so Cool !!!

Today (2016/08/18) also marks the 10th Anniversary of PowerShell ! Quite a surprise that the PowerShell team prepared for us :-) Given the recent changes in leadership and culture, It is really nice to see Microsoft taking that direction.

PowerShell is now Open Source

Under the MIT License, PowerShell is now an Open Source Software (OSS).

This was made possible withthe release of the .NET Core Framework,foundational libraries called CoreFX. A framework available on Windows, OS X and Linux! .NET Core is cross-platform and open source.

PowerShell Core is fairly recent and does not offer all the cmdlets available on PowerShell yet since they don’t rely on the same Net Framework as Windows PowerShell (.NET). As a side note, Windows Server 2016 Nano Edition (aka Nano Server) is running on PowerShell Core.

PowerShell is now a Cross Platform technology

In addition to Windows Client and Server, PowerShell is now available on the following operating systems:

  • Linux
    • Ubuntu 14.04 \ 16.04
    • CentOs 7.1
    • RHEL 7
  • MAC OS X
    • OS X 10.11

Download / Test / Contribute

The source are located on Github on the following repository https://github.com/PowerShell/PowerShell

It also worth to note that the PowerShell Team is also providing some nice examples/demos on their GitHub repository:https://github.com/PowerShell/PowerShell/tree/master/demos

Some of the examples available:

Installing PowerShell Core on Linux and Mac

Here is the documentation on how to proceed with the installation of PowerShell Core on Linux and Mac.https://github.com/PowerShell/PowerShell/blob/master/docs/installation

At the time I’m writing this, I only see documentation on how to install PowerShell Core on Linux

PowerShell Core on Linux
PowerShell Core on MAC OS X

More information

RECAP : 2006 PowerShell v1 > 2016 PowerShell v5

Here is a small recap of the previous version of powershell over the last 10 years with some of most important features introduced for each versions

Source: Wikipedia (https://en.wikipedia.org/wiki/Windows_PowerShell)

PowerShell v1 (2006)

PowerShell 1.0 was released in November 2006 for Windows XP SP2, Windows Server 2003 and Windows Vista. It is an optional component of Windows Server 2008.

PowerShell v2 (2008)

PowerShell 2.0 is integrated with Windows 7 and Windows Server 2008 R2 and is released for Windows XP with Service Pack 3, Windows Server 2003 with Service Pack 2, and Windows Vista with Service Pack 1.

PowerShell V2 includes changes to the scripting language and hosting API, in addition to including more than 240 new cmdlets.

Some of the features:

  • PowerShell Remoting
  • Background Jobs
  • Transactions
  • Modules
  • Debugging
  • Eventing
  • PowerShell ISE

PowerShell v3 (2012)

Some of the features:

  • Scheduled Jobs
  • Web Cmdlets
  • AST
  • Workflow
  • CIM Cmdlets

PowerShell v4 (2013)

Some of the features:

  • Desired State Configuration (DSC)
  • Save-Help
  • Remote Debugging
  • PowerShell Web Access (PWA)
  • PSReadLine

PowerShell v5 (2016)

Some of the features:

  • PowerShell Classes
  • Pester
  • PowerShell JEA (Just Enought Administration)
  • PacketManagement (OneGet)
  • Debugging Runspaces in remote processes
  • Debugging PowerShell Background jobs
  • Desired State Configuration (DSC) Local Configuration Management (LCM) v2
  • DSC Partial Configurations
  • DSC LCM meta-Configuration
  • Authoring DSC Resource
  • Script Analyzer

PowerShell v5.1 (2016)

Some of the features:

  • PacketManagement (Support for proxies)
  • PSReadline (VIMode)
  • LocalAccount module

Leave a comment