0845 470 1000 / enquiries@flane.co.uk
> > > 10961 Detailed outline

Automating Administration with Windows PowerShell (10961)

Detailed Course Outline

Module 1: Getting Started with Windows PowerShell
In this module students will learn a bit about PowerShell's purpose and history, and will learn the basics of using the shell, including the help system, command syntax, command discovery and more.


  • Overview and Background
  • Finding and Running Commands

Lab : Configuring Windows PowerShell

  • Configure the console application
  • Configure the ISE Application

Lab : Finding and Running Basic Commands

  • Finding and Running Basic commands

Module 2: Working with the Pipeline
In this module students will learn to use PowerShell's pipeline, along with a number of new commands, to start retrieving, manipulating, and displaying data. An emphasis is placed on proper syntax and form.


  • Working with the Pipeline
  • Exporting, Importing and Converting Data
  • Filtering Objects Out of the Pipeline
  • Enumerating Objects in the Pipeline

Lab : Working with the Pipeline

  • Retrieve data, manipulate objects and customise the final display

Lab : Exporting, Importing and Converting Data

  • Import, Export and convert data within Windows PowerShell

Lab : Filtering Objects Out of the Pipeline

  • Filter Objects Out of the Pipeline
  • Examine Several Commands and Predict Their Output

Lab : Enumerate Objects in the Pipeline

  • Enumerate Objects in the Pipeline and perform specific tasks

Module 3: Understanding How the Pipeline Works
In this module students will learn the underlying details of how commands are passed from one command to another in the pipeline. Having seen it in action, they'll now get to see some of the theory under the hood. The emphasis will be in the ByValue and ByPropertyName techniques, with demonstrations that illustrate effective uses of each. Students will also learn techniques that can be used in lieu of pipeline binding, for when such binding is unavailable or ineffective.


  • Passing Data in the Pipeline ByValue
  • Passing Data in the Pipeline ByPropertyName

Lab : Working with Pipeline Parameter Binding

  • Examine Several Commands and Predict Whether or Not They Will Work as Written
  • Construct new Commands that Utilize Pipeline Parameter Binding

Module 4: Using PSProviders and PSDrives
In this module students will learn about PSProviders and PSDrives, and learn to use -Item* commands to manipulate items within a PSDrive.


  • Understanding PSProviders and PSDrives
  • Using PSDrives

Lab : PSProviders and PSDrives

  • Using PSProviders and PSDrives

Module 5: Formatting Output
In this module students will learn to manipulate command output to create customized on-screen, text file, and hardcopy results


  • Using Basic Formatting
  • Using Advanced Formatting
  • Redirecting Formatted Output

Lab : Formatting Output

  • Use Formatting cmdlets to customize those cmdlets output

Module 6: Using WMI and CIM
In this module students will learn to use Windows Management Instrumentation / Common Information Model (WMI/CIM) to retrieve, and in some cases, modify management information about local and remote computers.


  • Understanding WMI/CIM
  • Querying Data with WMI/CIM
  • Making Changes with WMI/CIM

Lab : Working with WMI and CIM

  • Locate and Query WMI Classes to retrieve Management Information

Module 7: Prepare for Scripting
In this module students will learn about pre-requisite features to writing PowerShell scripts, including variables and PowerShell's scripting security features.


  • Using Variables
  • Scripting Security
  • Working with Alternate Credentials

Lab : Working with Security in PowerShell

  • Configure Execution Policy
  • Create and Use Alternate Credentials

Module 8: Moving From a Command to a Script to a Module
In this module students will learn to take a command that runs well in the console, and turn it into a reusable script. A number of important concepts, such as error handling, will be introduced - but not explored in extreme depth. Students will be taught enough to be "immediately effective" with these concepts, but not given an exhaustive education. The point is to get them started in an effective fashion using best practices, and to give them a basis for further independent exploration.


  • Moving From Command to Script
  • Moving From Script to Function to Module
  • Implementing Basic Error Handling
  • Using Basic Scripting Constructs
  • Further Exploration in Scripting

Lab : Moving From Command to Script

  • Convert a Functioning command into a parameterized Script

Lab : Moving From Script to Function to Module

  • Encapsulate a Script into a Function, Turn the script into a Module and add debugging

Lab : Implementing Basic Error Handling

  • Add Basic Error Handling capabilities to a Script

Lab : Adding Logic to a Script

  • Add a function to a Script

Module 9: Administering Remote Computers
In this module students will learn how to configure and use PowerShell Remoting


  • Using Basic Remoting
  • Using Remote Sessions
  • Using Remoting for Delegated Administration

Lab : Working with Remoting

  • Enable Remoting
  • Remotely Manage Machines

Lab : Working with PSSessions

  • Import a Module from a Remote Machines
  • Establish and Use Connections with several computers

Lab : Remoting for Delegated Administration

  • Create and Register a Custom Session Configuration
  • Test the Custom Session Configuration

Module 10: Putting it All Together
In this module students will utilize much of what they've learned to this point in a practical, from-scratch-exercise to configure a newly-installed Server Core computer.


  • Planning the Script

Lab : Configuring a New Server Core Installation

  • Determine Server Cores IP Address
  • Add Server Core Computers IP Address to local TrustedHosts list
  • Add the Server Core Computer to a Domain and Configure a DHCP reservation
  • Add Specified Roles and features to the Server Core Computer

Module 11: Using Background Jobs and Scheduled Jobs
In this module students will learn to create and manage background jobs and scheduled jobs.


  • Using Background Jobs
  • Using Scheduled Jobs

Lab : Working with Background Jobs

  • Start Background Job
  • Manage Existing Jobs

Lab : Working with Scheduled Jobs

  • Create, run and retrieve data using Scheduled Jobs

Module 12: Using Advanced PowerShell Techniques and Profiles
In this module students will learn several additional techniques and feature of Windows PowerShell.


  • Using Advanced PowerShell Techniques
  • Creating Profile Scripts

Lab : Practicing Advanced Techniques

  • Practice Advanced Techniques
  • Create a Profile Script that defines several parameter defaults