CWL-55039 Windows PowerShell Scripting and Toolmaking

This five-day instructor-led course is intended for IT professionals who are interested in furthering their skills in Windows PowerShell and administrative automation. The course assumes a basic working knowledge of PowerShell as an interactive command-line shell, and teaches students the correct patterns and practices for building reusable, tightly scoped units of automation.


Target audience:
This course is intended for administrators in a Microsoft-centric environment who want to build reusable units of automation, automate business processes, and enable less-technical colleagues to accomplish administrative tasks.

After completing this course, students will be able to:

  • Describe the correct patterns for building modularized tools in Windows PowerShell
  • Build highly modularized functions that comply with native PowerShell patterns
  • Build controller scripts that expose user interfaces and automate business processes
  • Manage data in a variety of formats
  • Write automated tests for tools
  • Debug tools

Prerequisites to the course (recommended):

  • Experience at basic Windows administration
  • Experience using Windows PowerShell to query and modify system information
  • Experience using Windows PowerShell to discover commands and their usage
  • Experience using WMI and/or CIM to query system information

The training topics and description:

Module 1: Tool DesignThis module explains how to design tools and units of automation that comply with native PowerShell usage patterns.

Module 2: Start with a CommandThis module explains how to start the scripting process by beginning in the interactive shell console.

Module 3: Build a Basic Function and ModuleThis module explains how to build a basic function and module, using commands already experimented with in the shell.

Module 4: Adding CmdletBinding and ParameterizingThis module explains how to extend the functionality of a tool, parameterize input values, and use CmdletBinding.

Module 5: Emitting Objects as OutputThis module explains how to create tools that produce custom objects as output.

Module 6: An Interlude: Changing Your ApproachThis module explains how to re-think tool design, using concrete examples of how it’s often done wrong.

Module 7: Using Verbose, Warning, and Informational OutputThis module explains how to use additional output pipelines for better script behaviors.

Module 8: Comment-Based HelpThis module explains how to add comment-based help to tools.

Module 9: Handling ErrorsThis module explains how to create tools that deal with anticipated errors.

Module 10: Basic DebuggingThis module explains how to use native PowerShell script debugging tools.

Module 11: Going Deeper with ParametersThis module explains how to further define parameter attributes in a PowerShell command.

Module 12: Writing Full HelpThis module explains how to create external help for a command.

Module 13: Unit Testing Your CodeThis module explains how to use Pester to perform basic unit testing.

Module 14: Extending Output TypesThis module explains how to extend objects with additional capabilities.

Module 15: Analyzing Your ScriptThis module explains how to use Script Analyzer to support best practices and prevent common problems.

Module 16: Publishing Your ToolsThis module explains how to publish tools to public and private repositories.

Module 17: Basic Controllers: Automation Scripts and MenusThis module explains how to create controller scripts that put tools to use.

Module 18: Proxy FunctionsThis module explains how to create and use proxy functions.

Module 19: Working with XML DataThis module explains how to work with XML data in PowerShell.

Module 20: Working with JSON DataThis module explains how to using JSON data in PowerShell.

Module 21: Working with SQL Server DataThis module explains how to use SQL Server from within a PowerShell script.

Module 22: Final ExamThis module provides a chance for students to use everything they have learned in this course within a practical example.



Koolituse läbiviimise põhimõtted: Koolitus toimub eesti keeles. Kõik koolituse teoreetilised osad on toetatud praktiliste harjutustega õpilaborites. Koolituse hinnas sisaldub ühe Microsofti sertifitseerimiseksami sooritamise võimalus 6 kuu jooksul pärast koolitust.

Maht: 40 akadeemilist tundi

Tunnistuse väljastamise eelduseks on koolitusel osalemine terves mahus.


Koolitushind sisaldab lisaks:
koolitaja konsultatsiooni õpitud teemade kohta e-posti teel pärast koolitust;

Lisaväärtusena pakume:
tasuta parkimist;
sooje jooke koos küpsistega;
värskeid puuvilju;