O'Reilly logo
live online training icon Live Online training

Managing and Automating Tasks with PowerShell

From the basics to custom modules

John Savill

PowerShell is the preferred shell interface and scripting environment for every Windows-based administrator, and it's quickly finding a home on other platforms as well. Nearly every vendor creates a PowerShell module for their solution, enabling PowerShell users to easily master any heterogeneous environment.

In this three-hour hands-on training, John Savill walks you through PowerShell foundational concepts, from structure and syntax to common commands and more advanced techniques such as the pipeline, scripting, remote management, and custom modules. You'll leave ready to manage your own environments and automate most tasks using PowerShell.

What you'll learn-and how you can apply it

  • How to utilize PowerShell to manage environments and automate tasks
  • How to use multiple commands through the Azure pipeline

Participants will be able to:

  • Create scripts
  • Communicate with remote machines
  • Create custom modules

This training course is for you because...

  • You're an IT administrator who wants to manage your environments using PowerShell.
  • You're an operations team member who needs to automate tasks.


  • A working knowledge of Windows
  • Familiarity with command-line interfaces

Materials or Downloads Needed in Advance:

  • A Windows 8.1 or Windows 10 (preferred) machine (Make sure your machine is patched; if using Windows 8.1, install WMF 5.1.)
  • Access to a server (useful but not required)

About your instructor

  • John Savill is a Windows technical specialist. An 11-time MVP and an MCSE for Azure Infrastructure and Windows Server 2016, John is also Azure certified, ITIL certified, and a CISSP. John is the author of the popular FAQ for Windows, as well as the author of eight books, including Mastering Azure Infrastructure Services and Mastering Windows Server 2016 Hyper-V, both from Wiley. John blogs at Savilltech.com and tweets at @NTFAQGuy.


The timeframes are only estimates and may vary according to how the class is progressing

Introduction to PowerShell (50 minutes) - Lecture: Syntax basics; using the pipeline - Hands-on exercise: Examine processes on your system; identify all processes that start with the letter W using the pipeline; perform the same exercise using a foreach structure

Break (10 minutes)

Advanced commands (50 minutes) - Lecture: Advanced commands; interacting with objects and interacting with the user; a basic script consisting of a number of commands _ Hands-on exercise: Create a script that accepts a string as input (The script should prefix the string with today's data in the format mm/dd/yyyy - <original string>)

Break (10 minutes)

Practical applications (50 minutes) - Lecture: Using advanced scripts and creating custom modules - Hands-on exercise: Pick an idea for a custom cmdlet that accepts input and utilizes a number of the techniques covered in this course; ensure the cmdlet has help available

Wrap-up and Q&A (10 minutes)

Homework: Create your own custom module that includes at least one cmdlet that accepts two parameters as input and performs an action you have previously done manually.