Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
In exchange, many commands are directed at all mailboxes in the environment, but there is a time when you only want info on a specific organizational unit (OU).
It is actually very easy to do, below is a snippet of a script you can use to get the last logon information for an OU which also lists things like the Mailbox Size, Last Logon Date etc.
$users = get-mailbox -organizationalunit "attribute here" -resultsize unlimited
$userarray = @()
foreach ($user in $users)
{
$MailUser = $user.UserPrincipalName
$stats= Get-MailboxStatistics $MailUser
$datetime = $stats.LastLogonTime
$date, $time = $datetime -split(' ')
$Maildetails = New-Object -TypeName PSObject -Property @{
DisplayName = $stats.DisplayName
ItemCount = $stats.ItemCount
MailboxSize = $stats.TotalItemSize
LastLogonDate = $date
LastLogonTime = $time
Email = $MailUser
}
$userarray += $Maildetails
}
$userarray | Export-Csv -Path C:\Users1.csv
It outputs to a CSV file, I saved the data as and Excel workbook and this is what it looks like:
You can head over to the gallery here and grab the PS1 script.
In the script on line 1 in inverted commas "", put the attribute of the OU in and on the last line, specify where you want the csv file to export to.
https://gallery.technet.microsoft.com/Get-last-logon-time-for-11e894f5