Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $Mailboxes | ForEach-Object -ThrottleLimit 10 -Parallel {
- $MailboxName = $_.DisplayName
- $MailboxEmail = $_.UserPrincipalName
- $MailboxType = $_.RecipientTypeDetails
- Write-Host "Collecting mailbox stats for $MailboxName ($MailboxEmail)"
- Get-MgUserLicenseDetail -UserId $_.UserPrincipalName | Select-Object SkuId | ForEach-Object {
- $LicenseInfo = $_.SkuId
- $UserLicenseNames += $LicensesHashTable.Item("$LicenseInfo") + ", "
- }
- if($UserLicenseNames -NE $null){
- $UserLicenses = $UserLicenseNames.SubString(0, ($UserLicenseNames.Length)-2)
- }
- else{
- $UserLicenses = "N/A"
- }
- $MailboxStats = Get-EXOMailboxStatistics -Identity $_.UserPrincipalName | Select-Object TotalItemSize
- $MailboxSize = [string]($MailboxStats.TotalItemSize)
- $MailboxStatsReport += Get-MgUser -UserId $_.UserPrincipalName | Select-Object DisplayName, UserPrincipalName, @{N='MailboxSize';E={$MailboxSize}}, @{N='Licenses';E={$UserLicenses}}
- Start-Sleep -Seconds 2
- $MailboxStatsReport | Export-Excel -Path C:\Temp\MailboxUsageReportPS7.xlsx -Append
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement