SOLVED

How to filter last 30 days on Get-MailboxSearch?

Deleted
Not applicable

Hi

I have this script but I need to be able to report on the last 30 days only:

$When = (get-date).AddDays(-30).ToString("dd/MM/yyyy HH:mm:ss")
Get-MailboxSearch   |  Select Name, InPlaceHoldEnabled,@{n="Export Date";e={[datetime]($_.LastEndTime)}}

I cannot find a way to be able to filter based on $when.

Any ideas please?

M

4 Replies
In your Get-MailboxSearch, you should be able to use -SearchQuery "Sent: $when"
Hi
I am not searching for emails. all I want to to see is in-place hold accounts.
M
Might be easier to filter on the AD attrib msExchLitigatiomHoldDate then
best response confirmed by VI_Migration (Silver Contributor)
Solution

Got the solution - the date variable needs the same format as the property:

 

$When = (get-date).AddDays(-30).ToString("MM/dd/yyyy HH:mm:ss")
$holdsReport = Get-MailboxSearch   |  Select Name, InPlaceHoldEnabled,@{n="ExportDate";e={[datetime]($_.LastEndTime)}}| Where-Object ExportDate -GT $when | Sort-Object ExportDate -Descending

M

1 best response

Accepted Solutions
best response confirmed by VI_Migration (Silver Contributor)
Solution

Got the solution - the date variable needs the same format as the property:

 

$When = (get-date).AddDays(-30).ToString("MM/dd/yyyy HH:mm:ss")
$holdsReport = Get-MailboxSearch   |  Select Name, InPlaceHoldEnabled,@{n="ExportDate";e={[datetime]($_.LastEndTime)}}| Where-Object ExportDate -GT $when | Sort-Object ExportDate -Descending

M

View solution in original post