Course Description

PowerShell is a task automation and configuration management framework from Microsoft, consisting of a command-line shell and associated scripting language.

Course Content

  • Course Outline
    1. Windows PowerShell
  • What is windows PowershellWindows Powershell Architecture

    Overview and Background

    Finding and Running Commands

    Exploring Inbuilt Security

  • 2. Powershell Help System
  • Understanding PowerShell help System
  • Types of Help AvailableHow to read PS Help

    Understanding the commands

    Identifying the parameters

    3. Working with the Pipeline

  • Concept of Pipeline
  • Advantages of Pipeline
  • Exporting, Importing, and Converting DataFiltering Objects Out of the Pipeline
  • Enumerating Objects in the Pipeline
  • 4. How the Pipeline Works
  • Passing Data in the Pipeline ByValuePassing Data in the Pipeline ByPropertyName
  • 5. Using PSProviders and PSDrives What are PSProviders and PSDrives
  • Purpose of PSProviders and PSDrives
  • Using PSDrives to work with Registry, Files system
  • Modifying/Querying the Registry and File system6. Formatting Output
  • Using Basic FormattingExploring Inbuilt formatting

    Using Advanced Formatting

  • Redirecting Formatted Output to file, Screen, PrinterCustom Formatting

    7. Using WMI and CIM

  • Introduction to WMI and WMI ObjectsNeed of WMI in Powershell

    Querying Data with WMI/CIM

    Making Changes with WMI/CIM

  • Practical implementation in day to day programming8. Powershell Modules and Manifests
  • Adding additional functionality in shell
  • Exploring new CMDLETS
  • Dynamic/Manual Module loadingCreating your own module
  • 9. Preparing for Scripting
  • Types of VariableUsing Variables
  • Scope of VariablesScripting Security

    Working with Alternate Credentials

    10. Moving From a Command to a Script to a Module

  • Moving From Command to Script
  • Moving From Script to Function to Module
  • Implementing Basic Error HandlingUsing Basic Scripting Constructs

    Further Exploration in Scripting

    8. Administering Remote Computers

  • What is PowerShell Remoting?Prerequisites for Remoting

    Using Basic Remoting 1:1 and 1: Many

  • Creating interactive Remote session
  • Creating Persistent Session
  • Using Remoting for Delegated Administration9. Loops Supported in Powershell
  • If..Else and nested If..Else
  • ForeachFor
  • SwitchWhile Loop



    10. Using Background Jobs and Scheduled Jobs

  • Understanding Background JobsCreating, Querying Jobs

    Working in Parallel with Background Jobs

    Creating and managing Scheduled Jobs

    11. Using Advanced PowerShell Techniques and Profiles

  • Understanding Powershell FunctionPurpose Of Functions

    Creating Powershell Functions

    Adding Help information in functions

    Using Parameters in script

    Adding advanced parameters.

    Creating Profile Scripts


  • Lab 1: Configure Windows PowerShell
  • Configure the Console Application
  • Configure the ISE Application
  • Lab 2: Find and Run Basic Commands
  • Exploring CMDLETS
  • Discovering CMDLETS
  • Reading the Helps and understanding the functionality of CMDLETS
  • Lab 3: Work with the Pipeline
  • Retrieve Data, Manipulate Objects, and Customize The Final DisplayLab 4: Exporting, Importing, and Converting Data within Windows PowerShell
  • Redirecting Output of CMDLETS to files and Screen
  • Lab 5: Filter Objects Out of the Pipeline
  • Examine Several Commands and Predict their OutputLab 6: Enumerate Objects in the Pipeline
  • Lab 7: Work with Pipeline Parameter Binding
  • Examine Several Commands and Predict Whether or Not they will Work as
    Construct New Commands that Utilize Pipeline Parameter Binding
  • Lab 8: Use PSProviders and PSDrives
  • Querying, Updating Registry ObjectsQuerying, Updating file system

    Lab 9: Format Output

  • Use Formatting cmdlets to customize those cmdlets outputLab 10: Work with WMI and CIM
  • Locate and Query WMI Classes to Retrieve Management InformationLab 11: Work with Security in PowerShell
  • Configure Execution PolicyCreate and Use Alternate Credentials

    Lab 12: Move from Command to Script

  • Convert a Functioning Command into a Parameterized ScriptLab 13: Move from Script to Function to Module
  • Encapsulate a Script into a Function, Turn the Script into a Module, and Add
    Lab 14: Implement Basic Error Handling
  • Add Basic Error Handling Capabilities to a Script
  • Lab 15: Add Logic to a Script
  • Add a Function to a ScriptLab 16: Work with Remoting
  • Enable RemotingRemotely Manage Machines

    Lab 17: Work with PSSessions

  • Import a Module from a Remote MachinesEstablish and Use Connections with Several Computers

    Lab 18: Remote for Delegated Administration

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

    Lab 19: Configure a New Server Core Installation

  • Determine Server Cores IP AddressAdd Server Core Computers IP Address to Local TrustedHosts List

    Add Specified Roles and Features to the Server Core Computer

    Lab 20: Work with Background Jobs

  • Start Background Job
  • Manage Existing JobsLab 21: Work with Scheduled Jobs
  • Create, Run, and Retrieve Data Using Scheduled JobsLab 22: Practice Advanced Techniques
  • Create a Profile Script that Defines Several Parameter Defaults