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

Capabilities of scripts, functions, and script blocks

Scripts, functions, and script blocks share many of the same capabilities. These capabilities are explored during this and the next few chapters. Scripts, functions, and script blocks can each:

  • Define parameters
  • Support pipeline input
  • Support common parameters, including support for Confirm and WhatIf
  • Allow other functions to be nested inside

Scripts, but not functions or script blocks, support the using assembly and using namespace directives. Scripts also support the #Requires statement.

Scripts and using statements

using statements, introduced with PowerShell 5, were described in Chapter 7, Working with .NET. A short example of a using statement is shown here:

using namespace System.Xml.Linq

A function may benefit from using statements declared in a parent scope. The parent scope includes code run on the console, a script that contains a function, or a module (.psm1 file...