This four-day instructor-led course provides students with the knowledge and skills to leverage Microsoft Windows PowerShell v2 to administer their Windows environment. Both the command line environment and the scripting capabilities inherent in Microsoft’s automation engine are addressed during this hands-on course.
This course is intended for systems administrators responsible for managing Windows platforms who are interested in automating administrative tasks.
Module 1: Introduction to PowerShell – the Basics
This module explains how to install and configure PowerShell. In addition, students will be introduced to many of the concepts of PowerShell, including cmdlets and PowerShell drives.
Lessons
- What is PowerShell?
- PowerShell Cmdlets
- PowerShell Snapins
- PowerShell Modules
- PowerShell Remoting
- Navigating in PowerShell
- PowerShell Profiles
Lab : Introduction to PowerShell
After completing this module, students will be able to:
- Identify the requirements for running PowerShell
- Describe PowerShell cmdlets
- Understand the purpose of snapins and modules
- Describe the remote management capabilities of PowerShell
- Reference PowerShell drives and navigate in PowerShell hosts
- Understand how to customize the PowerShell environment through profiles
Module 2: The PowerShell Pipeline, Scripts and Syntax
This module explains how to use the PowerShell pipeline at the command line and in script files. It provides information on retrieving information on the properties and methods of objects. The module closes with information on command line syntax, managing output from cmdlets, and defining script blocks.
Lessons
- Pipelines
- Scripts
- Syntax, Output and Script Blocks
Lab : The PowerShell Pipeline, Scripts and Syntax
After completing this module, students will be able to:
- Define the PowerShell pipeline.
- Identify what the pipeline is used for.
- Use object properties and methods.
- Identify various components of statement syntax.
Module 3: Variables and Data Types, Variable Scopes, and Collections
This module explains how to use cmdlets associated with variables. addresses how PowerShell interprets variables based on their content. It reviews the common data types and how to control variable data types. It looks into the scope of the variable itself and finishes with using arrays.
Lessons
- Variables and Data Types
- Variable Scopes
- Collections
Lab : Variables and Data Types, Variable Scopes, and Collections
After completing this module, students will be able to:
- Describe how PowerShell interprets variables.
- Identify common data types.
- Describe the different variable scopes.
- Understand how to work with collections of objects.
Module 4: Security
This module explains how identify and configure script execution policies. It includes information on securing script files through the use of certificates as well as how to capture and use alternate credentials when executing commands. The module ends with a discussion on securing remote sessions.
Lessons
- Script Execution
- Signing Scripts
- Requesting Credentials and Using Secure Strings
- Securing Remote Sessions
Lab : Security
After completing this module, students will be able to:
- Identify script execution policy settings.
- Control script execution policy through the command line and group policy.
- Request credentials before executing a script.
- Describe commands available to secure information in scripts.
- Identify ways to secure remote sessions.
Module 5: Remote Management
This module explains how use the different methods of executing commands remotely. It covers the requirements for using PowerShell remoting, managing remote sessions, and running background jobs.
Lessons
- Configuring Remote Management
- Using PowerShell Remoting
- Using Jobs
Lab : Remote Management
After completing this module, students will be able to:
- Describe the different methods of remote management with PowerShell.
- Identify the requirements for remote management.
- Configure a system for remote management.
- Work with remote sessions.
- Manage background jobs.
Module 6: Script Flow Control Statements
This module explains how use the language elements of PowerShell. It covers the statements for looping, branching, and managing the behavior of those statements through the use of break and continue keywords.
Lessons
- Foreach and For
- While / Do While / Do Until
- If / Switch
- Break /Continue
Lab : Script Flow Control Statements
After completing this module, students will be able to:
- Identify looping statements.
- Describe the variations between WHILE / DO WHILE / DO UNTIL.
- Describe the differences between IF and SWITCH.
- Identify when you can benefit from BREAK or CONTINUE.
Module 7: Functions, Filters and Modules
This module explains how use the features of PowerShell which allow you to extend its functionality through reusable code. It includes creating robust functions by leveraging parameters and introduces modules which enhance the portability of reusable code.
Lessons
- Functions and Filters
- Scripting with Functions and Parameters
- Modules
Lab : Functions, Filters and Modules
After completing this module, students will be able to:
- Describe the purpose of a function.
- Identify how to pass arguments into a function.
- Differentiate between a function and a filter.
- Describe how to use functions in a script file.
- Identify types of modules.
Module 8: Error Handling
This module explains how use the error handling environment within PowerShell. It addresses the language components which enhance managing errors. The debugging options within both the console host and the ISE are presented as tools for debugging scripts.
Lessons
- Error Handling
- Script Debugging
Lab : Error Handling
After completing this module, students will be able to:
- Identify the types of errors
- Understand the uses of built-in variables for error handling
- Configure the way errors are treated
- Use language blocks for handling errors
- Implement debugging options
Module 9: Administrative Uses
This module explains how use the topics covered in previous modules in every day administrative tasks. It combines the command line, script files, modules and functions to automate a variety of tasks. It introduces the concepts of advanced scripting which make PowerShell an enterprise-ready scripting environment.
Lessons
- Manipulating files and folders
- Modifying Registry Data
- Working with Events
- Working with Active Directory Objects
- Advanced Scripting
Lab : Administrative Uses
After completing this module, students will be able to:
- Work with files and folders.
- Change information in the registry.
- Read information from event logs.
- Understand how to work with Active Directory.
- Create simple user interfaces.