WhenCreated 上的 Get-ADUser 筛选器适用于 -lt 但不适用于 -gt

2024-04-17

我试图搜索在指定日期之后创建的用户,但它总是不返回任何结果。如果我改变-gt/ge 到 -lt/le它正确地提取结果,所以这应该是可行的。我知道我可以过滤所有内容,然后执行Where-Object 来过滤gt/ge,但我确实需要过滤器发生在服务器端。

关于如何在不执行Where-Object 或使用Get-ADUser 的情况下成功实现这一点的任何想法?

更新 2015.01.23:并不总是出现此错误,但它有助于指出问题:Get-ADUser:此操作由于超时期限已过期而返回

$Today = Get-Date -year (Get-Date).Year -Month (Get-Date).Month -Day (Get-Date).Day -Hour 00 -Minute 00 -Second 00

$StartDate = $Today.AddDays(-3)

$inputProperties = @(
"samaccountname"
"employeeid"
"title"
"enabled"
"manager"
"whencreated"
)


Get-ADUser -Filter {(whencreated -ge $StartDate)} -Properties $inputProperties

我也尝试了你的代码,效果很好。另外,您可以更改变量$Today to $Today = (Get-Date).date它得到相同的结果。如果您收到超时错误,可以尝试将具有列出的属性的用户列表保存到变量中,然后对其进行过滤?

$Today = (Get-Date).date

$StartDate = $Today.AddDays(-3)

$inputProperties = @(
"samaccountname"
"employeeid"
"title"
"enabled"
"manager"
"whencreated"
)


$Users = Get-ADUser -Filter {(whencreated -ge $StartDate)} -Properties $inputProperties

$Users | ? { $_.whencreated -ge $StartDate }

如果仍然失败,请尝试设置ResultSetSize范围。如果您仍然收到超时错误,那么您就知道还有另一个问题。

Get-ADUser -ResultSetSize 1 -Filter {(whencreated -ge $StartDate)} -Properties $inputProperties

编辑:天哪,没有意识到这篇文章已经有 7 年了。我会留下我的答案,以防它对偶然发现这个问题的人有所帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WhenCreated 上的 Get-ADUser 筛选器适用于 -lt 但不适用于 -gt 的相关文章

随机推荐