Chapter 15. Tracing and Error Management
Introduction
What if it doesn’t all go according to plan? This is the core question behind error management in any system and it plays a large part in writing PowerShell scripts as well.
Although this is a core concern in many systems, PowerShell’s support for error management provides several unique features designed to make your job easier. The primary benefit is a distinction between terminating and nonterminating errors.
When running a complex script or scenario, the last thing you want is for your world to come crashing down because a script can’t open one of the 1,000 files it is operating on. Although the system should make you aware of the failure, the script should still continue to the next file. That is an example of a nonterminating error. But what if the script runs out of disk space while running a backup? That should absolutely be an error that causes the script to exit—also known as a terminating error.
Given this helpful distinction, PowerShell provides several features that let you manage errors generated by scripts and programs, and also allows you to generate errors yourself.
Determine the Status of the Last Command
Problem
You want to get status information about the last command you executed, such as whether it succeeded.
Solution
Use one of the two variables PowerShell
provides to determine the status of the last command you executed: the
$lastExitCode
variable
and the $?
variable.
$lastExitCode
A number that represents the exit ...
Get Windows PowerShell Cookbook, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.