Execution Status and Errors in Windows PowerShell Scripts

Q

How to check execution status and errors in Windows PowerShell scripts?

✍: FYIcenter.com

A

PowerShell provides 2 automatic variables to help you checking execution status and errors:

1. $? variable - The $? variable contains the execution status of the last operation. It contains TRUE if the last operation succeeded and FALSE if it failed.

2. $Error variable - The $Error variable contains an array of error objects that represent the most recent errors. The most recent error is the first error object in the array ($Error[0]).

Here is an example script on how to use $? and $Error variables:

Test-Connection "www.www.www" -Count 1
"Status: "+$?
"Error: "+$Error[0]

If you run it, you will get:

PS C:\fyicenter> .\My-Ping.ps1

Test-Connection : Testing connection to computer 'www.www.www' 
failed: The requested name is valid, but no data of the requested 
type was found  At C:\fyicenter\My-Ping.ps1:1 char:1

+ Test-Connection "www.www.www" -Count 1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ResourceUnavailable: (www.www.www:String) 
                              [Test-Connection], PingException
    + FullyQualifiedErrorId : TestConnectionException,Microsoft.PowerShell
                              .Commands.TestConnectionCommand

Status: False
Error: Testing connection to computer 'www.www.www' failed: The 
requested name is valid, but no data of the requested t ype was 
found 

 

Introduction of Windows PowerShell Script

⇒⇒Windows PowerShell Tutorials

2016-10-27, 408👍, 0💬