Microsoft Eases PowerShell Licensing for Non-Windows Use

Microsoft announced a licensing change late last week that may make it easier for PowerShell to be devised for use on platforms other than Windows.

Specifically, Microsoft placed the licensing for the Windows PowerShell 2.0 language under the Microsoft Community Promise agreement. This licensing requires no signature by developers to a formal agreement with Microsoft. It opens up some Microsoft-patented technologies for use in software produced by other vendors in perpetuity, according the agreement's FAQ.

Microsoft's move clears the way for software developers to adapt PowerShell for use on operating systems such as Apple's Mac or various Linux OSes, if they have the time and means to do so. At least the licensing is cleared for that kind of use. A Linux implementation already does exist called PASH.

Microsoft also produced documentation to help make that possible. The language is now described in the "Windows PowerShell Language Specification Version 2.0" document, which Microsoft made available on Monday at its Download Center page.

Jeffrey Snover, the inventor of Windows PowerShell and lead architect at the Windows Server Division, made the announcement, which was captured in a YouTube snippet, as noted by Microsoft MVP Don Jones in his WindowsITPro blog post. Snover said that while people have toyed with moving PowerShell to other platforms, Microsoft hadn't yet provided all of the tools in the past to get that done.

Jones noted that Microsoft won't be the one creating PowerShell for the Mac, but it has opened the door for others to make such an implementation happen. Still, he suggested that the prospects of seeing PowerShell for the Mac were "doubtful."

The text-based PowerShell language is typically used by IT pros for server management tasks, and it sometimes provides access to features unavailable through Microsoft's graphical user interfaces. Microsoft describes PowerShell as an "object-based distributed automation engine, scripting language, and command line shell."