尝试/捕获示例

时间:2018-09-14 13:03:30

标签: powershell

我知道,Stackoverflow绝对不是一个为您编写代码论坛,但是我发现很难找到在Powershell中正确使用try/catch的良好示例。我已经阅读了基础知识,并了解了理论概念,但执行力却很困难。

这是一个查询Active Directory的简单脚本:

do {
    clear
    Import-Module active*

    "============ WhoIs Lookup ============="
    Write-Host ""
    $who = Read-Host "WhoIs";


    $req = Get-ADUser -Identity $who 


    Write-Host ''
    Write-Host "$who is " -NoNewline
    Write-Host $req.Name -ForegroundColor Cyan
    pause
    } while ($run =1)

示例错误是:

Get-ADUser : Cannot find an object with
identity: '5621521' under: 'DC=dcsg,DC=com'.
At C:\Tools\CSOCTools\Who_Is\whoIs.ps1:10
char:12
+     $req = Get-ADUser -Identity $who
+            ~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFoun
   d: (5621521:ADUser) [Get-ADUser], ADIde
  ntityNotFoundException
    + FullyQualifiedErrorId : ActiveDirecto
   ryCmdlet:Microsoft.ActiveDirectory.Mana
  gement.ADIdentityNotFoundException,Micr
 osoft.ActiveDirectory.Management.Comman
ds.GetADUser

我怎么catch这个找不到用户错误?

0 个答案:

没有答案