我正在尝试将已终止员工的列表与AD属性EmployeeNumber进行比较。
当我运行下面的代码时,它似乎只为每个员工编号返回null。
我收到每个用户的错误:
AD中不存在用户
比较我做错了什么?
$file = Import-CSV Term.csv
foreach ($u in $file) {
$user = Get-ADUser -LDAPFilter "EmployeeNumber -eq $($u.Emp)"
If ($user -eq $Null) {
"User does not exist in AD " + $u.EmployeeName + " - " + $u.Emp
} Else {
Disable-ADAccount $user
Move-ADObject $user -TargetPath 'OU=Disabled Users,OU=Org Users,DC=Company,Dc=com'
Set-ADUser $user -Description "Account Disabled on $(get-date)"
}
}
答案 0 :(得分:0)
您的Get-ADUser
命令正在使用LDAPFilter
参数,但未使用LDAP过滤语法。您有两个选项,将参数更改为-Filter
或更改过滤sytax。
Get-ADUser -Filter "EmployeeNumber -eq $($u.Emp)"
Get-ADUser -LDAPFilter "(EmployeeNumber=$($u.Emp))"