0

我正在尝试使用以下语句在 Active Directory 中搜索用户,但在使用 $("smtp:$user") 时出现错误。

get-aduser -filter {(anr -eq $user) -or (anr -eq $("smtp:$user"))}

谁能解释一下为什么,或者有没有更好的方法来达到同样的结果。我希望用户能够包含姓名、电子邮件或 SAM 信息,并使用相同的代码进行搜索。

get-aduser :无法处理参数,因为参数“路径”的值无效。更改“路径”参数的值并再次运行该操作。
在 line:1 char:1
get-aduser -filter {(anr -eq $user) -or (anr -eq $("smtp:$user"))}
CategoryInfo:NotSpecified: (:) [Get-ADUser], PSArgumentException
FullyQualifiedErrorId:ActiveDirectoryCmdlet:System。 Management.Automation.PSargumentException,Microsoft.ActiveDirectory.Management.Commands.GetADUser

4

1 回答 1

0

我不确定您要达到的目标,因为第一个条件将包括第二个条件中的任何内容。

这看起来更好吗?:

$user = "SmithJ"
$SMTP = "smtp:$user"

Get-ADUser -Filter {anr -eq $user -or anr -eq $SMTP} 

于 2021-08-24T09:17:44.983 回答