当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell:使用 $Error 进行错误处理

作者:精品下载站 日期:2024-12-14 07:38:28 浏览:12 分类:玩电脑

PowerShell:使用 $Error 进行错误处理


PowerShell 中的 $Error 变量包含当前会话的所有错误对象。在这篇博文中,我将使用 $Error 执行一些任务,并向您展示 $Error 如何帮助您排查和调试 PowerShell 代码。让我们开始吧。

假设您尝试列出一个不存在的文件夹。

Get-ChildItem C:\nothere

[玩转系统] PowerShell:使用 $Error 进行错误处理

我们面临一条错误消息。该错误消息将存储在 $Error 变量中。

$Error

[玩转系统] PowerShell:使用 $Error 进行错误处理

但是,等一下,这是什么样的错误?

$error.CategoryInfo

[玩转系统] PowerShell:使用 $Error 进行错误处理

现在让我们清除这个错误。

$error.Clear()

[玩转系统] PowerShell:使用 $Error 进行错误处理

其他错误类别又如何呢?看看这个命令。

Enter-PSSession -ComputerName NotThere

[玩转系统] PowerShell:使用 $Error 进行错误处理

本例的原因是 RemoteTransporting 的异常。

[玩转系统] PowerShell:使用 $Error 进行错误处理

我们可以更详细地检查导致错误或异常的语句。

$Error.InvocationInfo.line

[玩转系统] PowerShell:使用 $Error 进行错误处理

值得一提的是,如果$Error中有多个错误,则可以用方括号调用所有错误。

[玩转系统] PowerShell:使用 $Error 进行错误处理

最后,将 $Error 变量的内容存储在文件中可能是个好主意。

$Error | Out-File $home\errors.txt

使用启动进程打开它。

Start-Process $home\errors.txt

[玩转系统] PowerShell:使用 $Error 进行错误处理

最后我想展示你可以用 throw 自己创建一个错误。

throw 'Operation aborted.'

[玩转系统] PowerShell:使用 $Error 进行错误处理

这就是我想展示的。回头见!

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯