我正在努力让Powerhsell回应用户输入和查询AD,但我现在就被卡住了。当我运行代码时,它只返回变量没有结果。也希望能够减少返回只有几个属性。如果多个用户具有相似的名称,我将需要创建一个循环或某些东西,以通过多个帐户工作,还没有到达那里。这样做的目的是能够在帮助台上快速查看有关用户的必要信息,并最终能够使用它来进行简单的密码重置和移动对象。非常新的,非常感谢任何建议或帮助。这个网站总是很好。提前致谢。
$Firstname = Read-Host 'What is the users FirstName?'
$Lastname = Read-Host 'What is the users Lastname?'
Get-ADUser -Filter {(Name -Like "$Firstname*") -And (Surname -Like "$Lastname*")} -Properties LastLogondate LockedOut EmployeeID
答案 0 :(得分:1)
这是AD cmdlet上-Filter
参数的已知问题。您可以单独使用变量,但不能在过滤器内部的字符串内部使用。
所以你可以这样做:
$Firstname = Read-Host 'What is the users FirstName?'
$Firstname = "$Firstname*"
$Lastname = Read-Host 'What is the users Lastname?'
$Lastname = "$Lastname*"
Get-ADUser -Filter {(Name -Like $Firstname) -And (Surname -Like $Lastname)} -Properties LastLogondate LockedOut EmployeeID
答案 1 :(得分:0)
Properties
参数的参数是一个字符串数组,您需要用逗号分隔它们:
Get-ADUser -Filter {(Name -like "$Firstname*") -and (Surname -like "$Lastname*")} -Properties LastLogondate,LockedOut,EmployeeID