BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
When PowerShell made its public debut in November 2006, and became available for all modern Windows versions early in 2007, it had already been knocking around in experimental and beta form for more than five years. Despite the numerous PowerShell script examples and reference guides available to Windows systems administrators, the scripting framework is still a mystery to many in IT.
PowerShell offers functionality equivalent to any of the major Unix or Linux shells. It supports numerous libraries of ready-to-run scripts designed to handle all kinds of administrative tasks. Savvy Windows professionals and admins could do a lot worse than to roll up their sleeves and get to know this scripting language and all the PowerShell tools for automating various tasks.
The PowerShell programming language is complete enough that it supports not just scripts -- which end with the .ps1 file extension -- but also .NET programs designed to interact with PowerShell, known as cmdlets, plus callable function and standalone executable programs also written using that language. If a PowerShell item is executable, it runs in its own process; otherwise, cmdlets and scripts run within a PowerShell process.
Learning more about PowerShell
Microsoft's TechNet includes a whole area on PowerShell, complete with prerecorded webcasts, with ongoing live entries coming online, as well as blogs, downloads and a plethora of information. Start with the Windows PowerShell Scripting page, where you can browse through these items. Next, check out this list of Scripting Guides, which cover a variety of topics sure to interest power users and Windows admins alike:
PowerShell reference areas and resources
While there is plenty of great PowerShell reference material available, the free Windows PowerShell Reference should be at the top of the list. It's a collection of information about PowerShell available via TechNet; it encompasses some of the items mentioned in the previous section, plus a bunch of other useful information and pointers to the important PowerShell-related class libraries. Other interesting references and resources are readily available using search, such as this TechNet PowerShell reference search, plus an Amazon book search that picks up the PowerShell items that get the best customer reviews. Also, be sure to check out the Windows PowerShell Software Developer's Kit and the attendant Windows PowerShell Programmer's Guide.
PowerShell script examples and cmdlet libraries
As you would expect, there's a whole raft of canned scripts and cmdlets available through TechNet. Most of the material is indexed and available on the Scripting with Windows PowerShell page, where items are broken down by category, such as Windows and Windows Server automation, System Center automation and Windows Azure Pack for Windows Server Automation.
The Microsoft Script Center includes references, blogs, downloads with thousands of ready-to-run scripts and cmdlets in a PowerShell repository organized under Script resources for IT professionals. This latter item includes more than 5,000 scripts across more than 30 categories -- from Active Directory to Windows Update and most conceivable points in between. There's also a PowerShell Code Repository for cmdlets, and a community-based script library at PowerShell.com.
Getting started with Windows PowerShell
Tips to help administrators learn PowerShell scripting
PowerShell module helps with storage configuration