I’m using PowerShell v2 and Microsoft’s AD module to search our AD for accounts whose EmployeeID match a particular ID. The ID is usually stored in AD as “00000123456” but the value i have to search with is only the “123456” part. problem is i cannot figure out how to do a -like search in AD. here’s my current code
$EmpInfo = Import-csv "PSfile.csv"
$EmplID = EmpInfo.ID
$EmpAD = get-aduser -Filter {employeeId -like "*$EmplID"} -Properties * -EA Stop
At this point, EmpAD is always empty
I can work around this by modifying EmpID to contain “*123456” before I call Get-ADUser and this works. But I can’t help but think there is a syntax problem preventing the obvious approach. Research to resolve it has been fruitless.
If your string is really in employeeID attribute you can test :
you can use LDP.EXE (or ADSI.EXE) to verify what exactly exists your Directory.
—–Edited—–
For me it works, if I test with LDIF:
There are 3 objects
In PowerShell with AD Cmdlets it gives the following :
And
Be carefull : I don’t understand why, but it took some time between the modification in the directory with MMC and the result in the PowerShell prompt. I reload a new PowerShell interpreter and re import AD module.