PowerShell简单的错误处理机制

简介:

一、利用环境变量

PowerShell中定义了两个变量进行默认的错误处理,输入“Get-Variable”得到Powershell系统中所有预定义的变量;

Error:这个变量会储存整个脚本所有的错误信息;

ErrorActionPreference: 这个变量定义powershell出错后,整个脚本该如何处理,预定义为“Continue”;

ErrorActionPreference包括SilentlyContinueContinueStop, 和Inquire四个参数;

image 

例如我们用“Get-Process –FileVersionInfo”命令来测试看看ErrorActionPreference变量的含义;

(1)默认情况下ErrorActionPreference为“Continue”;

脚本出错后仍在继续的执行:

image

error变量储存了错误的内容:

image


(2)设置ErrorActionPreference为“stop”;

脚本遇到错误便停止;

image

(3)设置ErrorActionPreference为“Inquire”;

脚本遇到错误需要人为的干预;

image

(4)设置ErrorActionPreference为“SilentlyContinue”;

脚本遇到错误后隐藏错误继续执行,错误信息写入Error变量;

image

不管ErrorActionPreference的值设为那一个,error变量都保存着错误信息;



二、利用“-ErrorAction”参数指定

ErrorAction包括SilentlyContinueContinueStopInquire,Suspend和Ignore六个参数;

例如我们用“Get-Process –FileVersionInfo”命令来测试

(1)默认情况下-ErrorAction为“Continue”;

脚本出错后仍在继续的执行:

image

(2)默认情况下-ErrorAction为“Stop”;

脚本出错后停止的执行:

image

(3)设置-ErrorAction为“Inquire”;

脚本遇到错误需要人为的干预;

image

(4)设置-ErrorAction为“Ignore”;

脚本遇到错误后忽略错误继续执行,错误信息不写入Error变量;

image

(5)设置-ErrorAction为“SilentlyContinue”;

脚本遇到错误后隐藏错误继续执行,错误信息写入Error变量;

image

(6)设置-ErrorAction为“Suspend”;

This value is only available in Windows PowerShell workflows. 
When a workflow runs into terminating error, this action preference automatically suspends the job to allow for further investigation. Afterinvestigation, the workflow can be resumed.




本文转自 bannerpei 51CTO博客,原文链接:http://blog.51cto.com/281816327/1417587,如需转载请自行联系原作者

相关文章
|
6月前
|
中间件
Koa2 的错误处理机制是什么?如何捕获错误?
Koa2 的错误处理机制是什么?如何捕获错误?
143 0
|
1月前
|
安全 IDE 测试技术
PHP编程中的错误处理与调试技巧
【9月更文挑战第33天】在代码的世界里,错误是不可避免的。它们像是旅途中的绊脚石,挑战着开发者的耐心和智慧。本文将带你走进PHP的错误处理机制,教你如何优雅地面对和解决这些“意外的小惊喜”。从基本的语法错误到逻辑上的漏洞,我们将一起探索如何通过错误报告、自定义错误处理和调试技巧来提升代码质量。准备好,让我们开始这段寻找并消灭错误的旅程吧!
|
3月前
|
PHP 开发者 UED
PHP编程中的错误处理与异常管理
【8月更文挑战第27天】在PHP编程的世界中,错误和异常是开发者常遇到的两大挑战。本文旨在通过浅显易懂的方式,引导读者理解如何在PHP代码中妥善处理错误和异常。我们将从基础的错误处理讲起,逐步深入到异常管理的高级技巧,确保你的代码在遇到问题时能够优雅地处理,而不是崩溃。文章将用实例说明如何捕获、记录和处理这些事件,以保障应用的稳定性和用户体验。
|
6月前
|
测试技术 C# 开发者
C#编程中的错误处理与调试
【4月更文挑战第20天】在C#编程中,错误处理(如异常处理和返回值)与调试是保证程序稳定性和可靠性的重要手段。异常处理允许结构化处理错误,恢复程序状态、记录错误信息和提供用户友好的提示。调试则涉及使用调试器、设置断点、检查变量值和跟踪执行流程。清晰的代码、单元测试和日志记录能提升调试效率。这两者共同提升代码质量,确保问题的有效解决。
52 5
|
安全 Windows
4.4 x64dbg 绕过反调试保护机制
在Windows平台下,应用程序为了保护自己不被调试器调试会通过各种方法限制进程调试自身,通常此类反调试技术会限制我们对其进行软件逆向与漏洞分析,我们以第一种`IsDebuggerPresent`反调试为例,该函数用于检查当前程序是否在调试器的环境下运行。函数返回一个布尔值,如果当前程序正在被调试,则返回True,否则返回False。函数通过检查特定的内存地址来判断是否有调试器在运行。具体来说,该函数检查了`PEB(进程环境块)`数据结构中的`_PEB_LDR_DATA`字段,该字段标识当前程序是否处于调试状态。如果该字段的值为1,则表示当前程序正在被调试,否则表示当前程序没有被调试。
309 0
4.4 x64dbg 绕过反调试保护机制
|
Ubuntu Linux 编译器
Breakpad跨平台c++ crash捕获和生成工具使用
Breakpad跨平台c++ crash捕获和生成工具使用
|
JavaScript 前端开发 开发者
14、错误处理机制
JavaScript 解析或运行时,一旦发生错误,引擎就会抛出一个错误对象。
141 0
|
Python Windows 编解码
|
前端开发 JavaScript