Get-ADUser-同时使用GivenName(FirstName)和Surname查找用户

时间:2019-05-01 15:59:49

标签: powershell

真的很简单..

试图创建一个Powershell脚本,如果找到用户,该脚本将返回AD结果。

我正在使用FirstName和Surname作为变量。到目前为止,我的脚本看起来有点像这样……

$FirstName = Read-Host "Please enter the First Name of the new user"

$Surname = Read-Host "Please enter the Surname of the new user"

Get-ADUser -f "GivenName -eq '$FirstName'" -and "Surname -eq '$Surname'"

当我运行Get-ADUser命令的每个部分(因此按名字搜索,按姓氏搜索)时,它将返回预期结果。

当我添加-并且作为运算符,因此两个条件都满足时,我得到:

Get-ADUser : A parameter cannot be found that matches parameter name 'and'.
At line:4 char:44
+ Get-ADUser -f "GivenName -eq '$FirstName'" -and "Surname -eq '$Surnam ...
+                                            ~~~~
    + CategoryInfo          : InvalidArgument: (:) [Get-ADUser], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.ActiveDirectory.Management. 
   Commands.GetADUser

我到底在哪里哪里错了??

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作:

Get-ADUser -Filter {Surname -eq "Smith" -and GivenName -eq "John"}
Get-ADUser -Filter {Surname -eq $surname -and GivenName -eq $firstname}

或者这个:

Get-ADUser -Filter "Surname -eq 'Smith' -and GivenName -eq 'John'"

您的示例中的问题是您闯出了'-and'过滤器,并且Get-ADUser不包含它作为参数。