Windows PowerShell (formerly code-named Monad) is one of the most important Windows Server management tools that Microsoft has released since VBScript. An entirely new scripting environment for Windows, PowerShell consists of a new command shell and a new scripting language. You can write PowerShell scripts using any text editor, but you must run them in the PowerShell command shell. Here's a 10-step curriculum that will help you get started learning about the PowerShell scripting technology.

1. Find the PowerShell home page—First, visit the PowerShell home page at http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx. There, you'll find a basic introduction to PowerShell and links to important PowerShell downloads.

2. Download and install PowerShell—PowerShell will be included in Longhorn Server, Microsoft Exchange Server 2007, and Microsoft System Center Operations Manager 2007, but not in any other versions of Windows—not even in Windows Vista. You can download PowerShell from http://www.microsoft.com/downloads/details.aspx?FamilyId= 2B0BBFCD-0797-4083-A817-5E6A054A85C9.

3. Download and install the PowerShell Documentation Pack—Microsoft's essential documentation for PowerShell—the Windows PowerShell RC1 Documentation Pack—includes a Getting Started Guide, a PowerShell User Guide, and a quick-start guide to script tracing. You can download the Documentation Pack at http://www.microsoft.com/downloads/details.aspx?FamilyId=B4720B00-9A66-430FBD56-EC48BFCA154F.

4. Launch the PowerShell command shell—After you've installed PowerShell and have the documentation in hand, you're ready to launch the command shell, which you'll use to run Power-Shell scripts and commands. Launch PowerShell by clicking Start, All Programs and selecting the Windows PowerShell menu option.

5. Get help—PowerShell is a new environment with new commands. The best way to learn about PowerShell's commands (called cmdlets) and concepts is to use the built-in Help command.

To access the Help system, use the cmdlet

PS C:\temp> get-help

6. Run some of the familiar PowerShell cmdlet aliases—The PowerShell command shell comes with several built-in commands that you'll need to learn. Some of these cmdlets are new, but others have aliases for familiar commands such as cd, copy, dir, echo, kill, mount, ps, ren, and type.

7. Explore the PowerShell cmdlets—PowerShell includes cmdlets that perform all sorts of system actions, from navigation and management to accessing resources. You can execute all of the cmdlets from the PowerShell command line or in your scripts. For a list of all available cmdlets, use the get-command command:

PS C:\temp> get-command

8. Find the cmdlet parameters—Most PowerShell cmdlets accept parameters that influence their functionality. All cmdlet parameters must be preceded by a dash (-). To find the parameters for a particular cmdlet, simply type the cmdlet followed by the -? parameter. For example, to list all available parameters for the get-psdrive cmdlet, type

PS C:\temp> get-psdrive -?

9. Join the PowerShell newsgroup—You're bound to have questions as you begin to work with PowerShell. To get answers from Microsoft and other IT professionals, post your questions in Microsoft's PowerShell newsgroup at http://www.microsoft.com/technet/community/newsgroups/dgbrowser/enus/default.mspxdg=microsoft.public.windows.server.scripting&lang=en&cr=US.

10. Get Sample PowerShell scripts—Running and modifying existing scripts is one of the best ways to jump-start your PowerShell development process. Microsoft's Script Center Script Repository provides a variety of PowerShell scripts, including Active Directory (AD), network, file system, and registry scripts as well as application and hardware management scripts. To download Microsoft's collection of PowerShell management scripts, go to http://www.microsoft.com/technet/scriptcenter/scripts/msh/default.mspx.