我试图在Powershell中进行检查,在其中我有一个变量内的AD用户列表,然后检查这些用户名中的每个用户名是否都存在于AD中。如果他们这样做,它将把它们添加到另一个变量中,如果没有,它们会将它们输出到找不到的标准输出。
例如,输入变量将类似于:
$CHECKUSERS = bakerc fosterv englesp
如果使用Get-ADUser在AD中存在bakerc和englesp(如果有更好的选择,则使用其他命令),然后将它们添加到另一个变量中,例如:
$VERIFIEDUSERS = bakerc englesp
然后将boostv输出到stdout:
fosterv not found
答案 0 :(得分:1)
不喜欢为您编写代码,但是这很简单。
由于有多个AD调用,因此不是最有效的方法,但确实可以完成工作。
$CHECKUSERS = "bakerc","fosterv","englesp"
$VERIFIEDUSERS = @()
$INVALIDUSERS = @()
Foreach($user in $CHECKUSERS) {
Try {
Get-ADUser $user | Out-Null
$VERIFIEDUSERS += $User
} Catch {
$INVALIDUSERS += $user
}
}