【发布时间】:2014-10-08 16:57:31
【问题描述】:
我正在编写一个 PowerShell 脚本来更改本地帐户名称。当然,第一步是检查账号是否存在:
$user=[ADSI]"WinNT://$server/$oldName,user"
如果帐户存在,则没有问题。但如果没有,那么我会收到此错误:
format-default:检索成员时发生以下异常>“distinguishedName”:“找不到用户名。” + CategoryInfo : NotSpecified: (:) [format-default], ExtendedTypeSystemException + 完全限定错误 ID: CatchFromBaseGetMember,Microsoft.PowerShell.Commands.FormatDefaultCommand
我不知道如何查找该错误,报告“$oldName not found”之类的内容并继续。据我所知,它没有被扔进错误变量中,所以我无法搜索“找不到用户名”字符串。 Try-Catch-Finally 似乎忽略了这个错误。
我承认我在错误处理方面很薄弱。似乎有无数种方法会导致失败,而我的用户在使用我的脚本时总是会找到新的方法。
【问题讨论】:
-
我在这里添加了一个可能有帮助的链接问题的答案:stackoverflow.com/questions/43145567/…
标签: powershell adsi