This five-day instructor-led course is intended for IT Professionals who have a working knowledge of Windows PowerShell 3.0 techniques and technologies, and who want to build reusable tools by using Windows PowerShell 3.0.
Delegates may administer a wide variety of server and client products and technologies that offer Windows PowerShell integration, including Microsoft Exchange Server, Microsoft Windows Active Directory Domain Services, Microsoft SharePoint Server, and more. This course focuses on the Windows PowerShell scripting language, and on the concepts and techniques needed to produce reusable, professional tools.
This course is intended for administrators that have little or no programming experience, but who have a working knowledge of Windows PowerShell and who are able to use Windows PowerShell to run complex, interactive commands.
At the end of this course you will be able to:
Module 1: Preparing for Scripting
This module explains how to prepare the environment for scripting, and provides refresher and background information for scripting.
Module 2: Parameterizing a Command
This module explains how to start with an existing command and parameterize it to create a reusable tool.
Lab : Parameterizing a Command
Module 3: Creating a Script Module
This module explains how to turn a basic script into a script module that can be distributed, loaded, and unloaded in Windows PowerShell.
Lab : Creating a Script Module
Module 4: Handling Errors
This module explains how to trap and handle errors within a script module.
Lab : Handling Errors
Module 5: Writing Commands that Use Pipeline Input and Output
This module explains how to write commands that integrate with the Windows PowerShell pipeline. Students will create commands that produce pipeline output and that accept pipeline input.
Lab : Writing Commands that Use Pipeline Inout and Output
Module 6: Creating Hierarchical Command Output
This module explains how to create, and use, object-oriented output that includes object hierarchies.
Lab : Creating Hierarchical Command Output
Module 7: Debugging Scripts
This module explains Windows PowerShell techniques used to debug scripts, and provides students with opportunities to practice debugging skills.
Lab : Debugging Scripts
Module 8: Customizing Default Formatting
This module explain how to create a custom formatting view that can be added to a script module.
Lab : Customizing Default Formatting
Module 9: Adding Advanced Parameter Attributes and Command Documentation
This module explains how to declare parameter aliases, help messages, and input validation. It also explains how to implement switch parameters, how to add support for the -WhatIf and -Confirm parameters, and how to add comment-based help to a command.
Lab : Adding Advanced Parameter Attributes and Command Documentation
Module 10: Creating Controller Scripts
This module explains how to create scripts that implement complex business processes by running multiple tools in a specified sequence.
Lab : Creating Controller Scripts
Module 11: Creating HTML-Based Reports
This module explains how to write controller scripts that produce HTML-based management reports.
Lab : Creating Reports by using HTML
Module 12: Creating Basic Workflows
This modules explains the key differences between Windows PowerShell functions and workflows, and shows delegates how to create a basic workflow.
Lab : Creating Basic Workflows
Module 13: Working with XML Data
This module explains how Windows PowerShell interprets, represents, and manipulates XML-based data.
Lab : Working with XML Data
Module 14: Using Advanced Scripting Techniques
This module explains how to use advanced scripting techniques, including execution of external commands and graphical user interfaces.
Module 15: Creating Proxy Functions
This module explains how to create proxy functions in Windows PowerShell.
Lab : Creating Proxy Functions
Module 16: Building Tools in Windows PowerShell
This module is a final exam for the course, and offers delegates the opportunity to build a complete tool, from scratch, using many of the techniques that they have learned in the preceding days.
Lab : Building Tools in Windows PowerShell