[英]Get-ADUser for not exact username
下面的脚本列出了一些用户详细信息,仅在我输入了确切用户名的情况下它才起作用。 如果输入部分用户名,是否可以使用一种方法来获得结果? 我的意思是,例如,如果我输入的是“ eli.bukin”或“ eli.buk”或“ eli.buk”,则女巫是正确的用户名。
do {
Write-Host "Who r we looking for ? (type EXIT when u done)"
$User = Read-Host
Get-ADUser $User -Properties * |
fl empl*,title, sam*, disp*, mail*, manager*, depa*, giv*, l, last*,
logon*, when*
} until ($user -eq "exit")
我将使用-LDAPFilter与不明确的名称解析(ANR)。
Get-ADUser -LDAPFilter "(anr=smith)"
有关ANR的更多信息,请参见https://support.microsoft.com/zh-cn/kb/243299 。
我实际上已经在编写类似这样的脚本。 我使用了-like运算符来容纳部分匹配项。 但是,这可能会给您带来不止一个结果。
Get-ADUser -Filter ("SamAccountName -like '*$user*'")
或使用以下这种格式来缩小结果范围:
Get-ADUser -Filter ("SamAccountName -like '*$user*' -and Name -like '*$FirstName*' -and Surname -like '*$Lastname*'")
使用-or
代替-and
以获得更广泛的结果。
如果要进行模糊匹配,请使用参数-Filter
和-like
运算符:
do {
$user = Read-Host -Prompt 'Who are we looking for (type EXIT when done)'
if ($user -ne 'exit') {
Get-ADUser -Filter "SamAccountName -like '*$User*'" -Properties * |
Format-List empl*,title, sam*, disp*, mail*, manager*, depa*, giv*, l,
last*, logon*, when*
}
} until ($user -eq "exit")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.