我正在尝试使用两个命令过滤列表 - 按属性过滤,然后按“未断开连接”和“在过去90天内登录”进行过滤。 尝试这样的事情,但它不起作用。
get-mailbox -filter'ExtensionCustomAttribute1 -eq $ null'| Get-MailboxStatistics -filter {DisconnectDate -eq $ null -and LastLogonTime -gt(获取日期).adddays(-90)}
当我跑步时;
get-mailbox -filter'ExtensionCustomAttribute1 -eq $ null'| 得到-MailboxStatistics
我得到了我正在寻找的信息的第一部分结果 - 我无法进一步过滤此列表。即添加 -filter 不起作用。
结果是:
答案 0 :(得分:0)
Technet文档指定必须使用单引号来完成过滤器,而不是大括号。
-Filter 'DisconnectDate -ne $null'
这里给出的例子是:https://technet.microsoft.com/en-us/library/bb124612(v=exchg.160).aspx
我在过滤AD用户之前遇到过这个问题。我必须假设他们在过去的某个时间改变了他们的标准。
如果你没有成功,你可以尝试使用where-object过滤到正确的...即:
Get-MailboxStatistics | ?{$_.DisconnectDate -ne $null}
如果有效,显然要使用前者。
答案 1 :(得分:0)
我说你问题的最佳解决方案是通过前面所述的where-object进行过滤。
以下内容应该适合您,它尚未经过测试但应该是正确的。
Get-Mailbox -Filter 'ExtensionCustomAttribute1 -eq $null' | Get-MailboxStatistics | where {$_.DisconnectDate -eq $null -and $_.LastLogonTime -gt (Get-Date).AddDays(-90)}