Introduction to Microsoft Windows PowerShell (PREVIEW)

Course Introduction

Windows PowerShell is Microsoft's core object-oriented scripting and automation language for software developers, infrastructure engineers, and operations teams. PowerShell is a self-describing, modular automation framework, that enables its users to easily find commands and modules, as well as inspect objects for properties, methods, and events.

PowerShell Release History

Microsoft Windows PowerShell was originally released in 2006 as version 1.0. This was Microsoft's initial foray into the world of an object-oriented shell design, and included basic support for managing Windows operating systems. PowerShell 1.0 was extensible using a model called "PSSnapins," however these were cumbersome to develop. In 2009, PowerShell 2.0 was released as an integrated component in Windows 7 and introduced new, major features such as PowerShell Remoting (think "SSH for PowerShell"), the PowerShell Integrated Scripting Editor (ISE), and the ability to develop modules using PowerShell script code or C# compiled modules. In 2012, PowerShell 3.0 came out with the new Windows 8 platform, adding support for the new PowerShell Workflow engine. The Workflow engine has seen limited adoption since its release, partially due to the constrained environment that it runs in. Alongside Windows 8.1 in 2013, Microsoft released PowerShell 4.0. One of the major, new features in this release is the Desired State Configuration (DSC) feature. DSC enables the declarative configuration of Windows and Linux operating systems using a friendly PowerShell syntax. While PowerShell is still a long ways off from being a C#-like language, PowerShell 5.0 came out on July 29th, 2015 with the Windows 10 operating system. The ability to create class definitions was added in PowerShell 5.0, making the development of object-centric modules and scripts significantly easier.

What You'll Learn

During this training course on Windows PowerShell, you'll learn the following items:

  • PowerShell Engine Host Applications
  • How to find PowerShell modules and commands
  • The structure of PowerShell command invocations
  • How to use the PowerShell object pipeline
  • Running scripts in PowerShell