首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >搜索器错误:“(mail=john.doe)搜索筛选器无效”

搜索器错误:“(mail=john.doe)搜索筛选器无效”
EN

Stack Overflow用户
提问于 2017-11-13 06:00:24
回答 1查看 374关注 0票数 1

我有个问题,关于邮件地址生成逻辑。首先假设是FirstName.Lastname,然后检查是否已经在AD中了。

如果它已经存在,它将添加结尾名的编号,直到找到一个未使用的邮件地址:

john.doe@contoso.comjohn.doe2@contoso.comjohn.doe3@contoso.com等。

注意:我们的名字是$FirstName,姓是$LastName

代码语言:javascript
复制
$count = $null
do {
    $query = "(mail=$username$count))"
    $result = ([adsisearcher]$query).FindOne()
    if ($result) {if ($count -eq $null) {$count = 2} else {$count++}}
} while ($result)

Write-Host "The account name you should use is: $username$count"

这里我的错误消息是:

使用"0“参数调用"FindOne”的异常:“(mail=john.doe)搜索筛选器无效。” 行号:5字符:45

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-13 09:12:56

如果我很理解你,你想找到下一个可用的电子邮件地址,并在它的末尾添加一个,以防它存在?

如果是这样,您可以使用这个简单的函数:

将您的输入添加为电子邮件格式,它将添加1,直到它找不到为止,并返回可用的邮件。

代码语言:javascript
复制
Function Get-AvailableMail()
{
Param(
$Email
)

$i = 1

    while (([adsisearcher]"(&(mail= $($Email)))").FindOne())
    {
    $Email = ($Email -split '@')[0] + "$i@" + ($Email -split '@')[1]
    $i++
    }

    return $Email

}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47257959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档