Book Image

Learn PowerShell Core 6.0

By : David das Neves, Jan-Hendrik Peters
Book Image

Learn PowerShell Core 6.0

By: David das Neves, Jan-Hendrik Peters

Overview of this book

Beginning with an overview of the different versions of PowerShell, Learn PowerShell Core 6.0 introduces you to VSCode and then dives into helping you understand the basic techniques in PowerShell scripting. You will cover advanced coding techniques, learn how to write reusable code as well as store and load data with PowerShell. This book will help you understand PowerShell security and Just Enough Administration, enabling you to create your own PowerShell repository. The last set of chapters will guide you in setting up, configuring, and working with Release Pipelines in VSCode and VSTS, and help you understand PowerShell DSC. In addition to this, you will learn how to use PowerShell with Windows, Azure, Microsoft Online Services, SCCM, and SQL Server. The final chapter will provide you with some use cases and pro tips. By the end of this book, you will be able to create professional reusable code using security insight and knowledge of working with PowerShell Core 6.0 and its most important capabilities.
Table of Contents (26 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

ConvertTo-Breakpoint


Among the huge number of useful modules on the internet, there is ConvertTo-Breakpoint by Kevin Marquette. The module is available on PowerShell Gallery and is being developed on GitHub at https://github.com/KevinMarquette/ConvertTo-Breakpoint. This module allows you to simply create breakpoints from error records, which has been a huge time-saver for us in the past.

Errors in PowerShell contains a lot of additional info, such as the target object, the category, and also the script stack trace. Kevin made use of that property to parse where in the script an issue occurred, to automatically set one or more new breakpoints. It is even possible to set breakpoints for all errors present in the stack trace. Take a look at the following code:

# Get the module
if (-not (Get-Module ConvertTo-Breakpoint -List))
{
    Install-Module ConvertTo-Breakpoint -Scope CurrentUser -Force
}

# Execute the entire script and see your breakpoints appear
# Execute the script a second time to...