Windows 7 and Windows Server 2008 R2 includes PowerShell version 2 natively. PowerShell V2 is alos now available in CTP3 release and is back ported to legacy platforms including Windows XP. A significant new technology integration scenario is the ability of PowerShell to easily and flexibly surface automation interfaces for server-side service-based solutions. Developers can leverage an incredibly flexible remote-capable automation subsystem to publish delegated interfaces for services that once required custom MMC snap-ins, GUI clients, or even HTTP interfaces. The following represents a sample of the new PowerShell features along with some links to learn more.
Universal Code Execution Model (UCEM)
The UCEM promotes more uniform and flexibile code execution, by allowing the same PowerShell scripts and commands to be run either locally or remotely, and in different modes. The Universal Code Execution Model effort also encompasses these additional features: PowerShell remoting, restricted runspaces, a new mobile object model, eventing and background jobs.
The same PowerShell expressions, commands, and scripts can be run in the foreground or background, on one or more machines, over a LAN or a WAN, in restricted or unrestricted environments, using short or long connections, using impersonation or supplied credentials, and can be initiated by either user input or by events.
Collectively, the UCEM features provide much of the necessary foundation to support scripted automation of the datacenter. Third party applications such as System Center deliver sophisticated orchestration solutions built on top of PowerShell.
Windows PowerShell Graphical Host
Windows 7 includes a graphical interface to PowerShell. The Windows PowerShell Graphical Host provides an integrated scripting and command-line experience with a syntax-coloring editor and selective execution. This graphical interface enables IT professionals to more quickly and easily build and debug PowerShell scripts.
PowerShell Script Internationalization & Restricted Shell
Script Internationalization enables script developers to easily localize the messages and content of PowerShell scripts. This PowerShell feature is especially useful for multinational companies because it reduces efforts for enterprise customers by following the .NET model for localization. Script developers use the PowerShell Restricted Shell to create a custom shell so that only certain commands or parameters to those commands are available to each administrator. You can also set access permissions (or ACLs) on custom scripts so that administrators have access only to those scripts to which they have been granted rights. This increases the number of tasks that administrators can delegate by controlling access at the task level while preserving the ability to drive automation across the organization.
PowerShell for IIS
The IIS PowerShell Provider in Windows Server 2008 R2 allows the complete management of IIS configuration and run-time data. Task-oriented Cmdlets make it easy to automate common administrative tasks like creating sites, applications or virtual directories.
PowerShell Support for Background Jobs
Allows local and remote commands to be run in the background while the console is used for more immediate work. Results can later be retrieved at the user’s convenience.
WPF via PowerShell?
Yes, there are even new techniques to provide users with a runtime generated GUI client rendered with a very sophisticated look and feel. Learn more at James Brundage’s blog.