*** Welcome to piglix ***

PowerShell

PowerShell
PowerShell 5.0 icon.png
Windows PowerShell 1.0 PD.png
Screenshot of a Windows PowerShell session
Paradigm Multi-paradigm: Imperative, pipeline, object-oriented, functional and reflective
Designed by Jeffrey Snover, Bruce Payette, James Truher (et al.)
Developer Microsoft
First appeared November 14, 2006; 10 years ago (2006-11-14)
Stable release
5.1.14393 / August 2, 2016; 6 months ago (2016-08-02)
Preview release
6.0.0 Alpha 15 / January 21, 2017; 25 days ago (2017-01-21)
Typing discipline Strong, safe, implicit and dynamic
Platform .NET Framework, .NET Core
OS Windows 7 and later, macOS, CentOS, Ubuntu
License MIT License (but the Windows component remains proprietary)
Filename extensions
  • .ps1 (Script)
  • .ps1xml (XML Document)
  • .psc1 (Console File)
  • .psd1 (Data File)
  • .psm1 (Script Module)
  • .pssc (Session Configuration File)
  • .cdxml (Cmdlet Definition XML Document)
Website microsoft.com/powershell
Influenced by
Ksh, Perl, C#, CL, DCL, SQL, Tcl, Tk,Chef, Puppet

PowerShell (including Windows PowerShell and PowerShell Core) is a task automation and configuration management framework from Microsoft, consisting of a command-line shell and associated scripting language built on the .NET Framework. PowerShell provides full access to COM and WMI, enabling administrators to perform administrative tasks on both local and remote Windows systems as well as WS-Management and CIM enabling management of remote Linux systems and network devices. Initially a Windows component only, PowerShell was made open-source and cross-platform on 18 August 2016.

In PowerShell, administrative tasks are generally performed by cmdlets (pronounced command-lets), which are specialized .NET classes implementing a particular operation. Sets of cmdlets may be combined into scripts, executables (which are standalone applications), or by instantiating regular .NET classes (or WMI/COM Objects). These work by accessing data in different data stores, like the file system or registry, which are made available to the PowerShell runtime via PowerShell providers.

PowerShell also provides a hosting API with which the PowerShell runtime can be embedded inside other applications. These applications can then use PowerShell functionality to implement certain operations, including those exposed via the graphical interface. This capability has been used by Microsoft Exchange Server 2007 to expose its management functionality as PowerShell cmdlets and providers and implement the graphical management tools as PowerShell hosts which invoke the necessary cmdlets. Other Microsoft applications including Microsoft SQL Server 2008 also expose their management interface via PowerShell cmdlets.


...
Wikipedia

...