Book Image

Mastering PowerShell Scripting - Fourth Edition

By : Chris Dent
5 (1)
Book Image

Mastering PowerShell Scripting - Fourth Edition

5 (1)
By: Chris Dent

Overview of this book

PowerShell scripts offer a convenient way to automate various tasks, but working with them can be daunting. Mastering PowerShell Scripting takes away the fear and helps you navigate through PowerShell's capabilities.This extensively revised edition includes new chapters on debugging and troubleshooting and creating GUIs (online chapter). Learn the new features of PowerShell 7.1 by working with parameters, objects, and .NET classes from within PowerShell 7.1. This comprehensive guide starts with the basics before moving on to advanced topics, including asynchronous processing, desired state configuration, using more complex scripts and filters, debugging issues, and error-handling techniques. Explore how to efficiently manage substantial amounts of data and interact with other services using PowerShell 7.1. This book will help you to make the most of PowerShell's automation features, using different methods to parse data, manipulate regular expressions, and work with Windows Management Instrumentation (WMI).
Table of Contents (26 chapters)
24
Other Books You May Enjoy
25
Index

Classes and DSC

Microsoft DSC, or Desired State Configuration, is one of several different configuration management systems available. Individual items are configured idempotently, that is, they only change when change is required.

Classes in PowerShell exist because of DSC. DSC resources written as PowerShell classes are very succinct; they avoid the repetition inherent in a script-based resource. Script-based resources must at least duplicate a param block.

Class-based DSC resources in a module must be explicitly exported using the DscResourcesToExport key in a module manifest document.

The class must include a DscResource attribute. Each property a user is expected to set must have a DscProperty attribute. At least one property must be the Key property of the DscProperty attribute set. The class must implement the Get, Set, and Test methods.

Class-based resources may use inheritance to simplify an implementation as required; this is especially useful if a group...