当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] Exchange Online - 使用 PowerShell 显示和导出信息 |办公室365

作者:精品下载站 日期:2024-12-14 08:39:09 浏览:12 分类:玩电脑

Exchange Online - 使用 PowerShell 显示和导出信息 |办公室365


在当前文章中,我们回顾如何使用 PowerShell 命令 Get-Mailbox 来显示和导出有关 Exchange Online 邮箱的信息。

Exchange Online 管理员最基本的需求之一是能够创建包含有关 Exchange Online 资源(例如邮箱、通讯组等)的信息的报告。

这就是 PowerShell “大放异彩”的地方!

GUI 界面(WEB 界面)显示信息的能力有限,并且无法导出数据或创建对特定对象或具有特定参数(属性)的对象的“广域”搜索。使用 PowerShell 时,选项是无限的。

本文包含用于显示和导出 Exchange Online 环境中的信息的 PowerShell 命令的组合。

1. 按邮箱类型显示信息

1.1 - 显示所有邮箱类型列表

PowerShell命令语法:

Get-Mailbox

调整和定制

过滤显示输出详细信息

PowerShell命令语法:

Get-Mailbox -ResultSize Unlimited | Where {$_.name -notlike '*DiscoverySearchMailbox*'}

1.2 - 显示所有邮箱摘要列表

PowerShell命令语法:

Get-User | Group RecipientTypeDetails

1.3 -显示office 365用户邮箱列表

PowerShell命令语法:

Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Select RecipientTypeDetails,Name,Alias

1.4 - 显示房间邮箱列表

PowerShell命令语法:

Get-MailBox -Filter '(RecipientTypeDetails -eq "RoomMailBox")' | Select Name,Alias

1.5 - 显示设备邮箱列表

PowerShell命令语法:

Get-MailBox -Filter '(RecipientTypeDetails -eq "EquipmentMailbox")' | Select Name,Alias

1.6 - 显示共享邮箱列表

PowerShell命令语法:

Get-MailBox -Filter '(RecipientTypeDetails -eq "SharedMailbox")' | Select RecipientTypeDetails,Name,Alias

1.7 - 统计邮箱数量

PowerShell命令语法:

(Get-Mailbox -ResultSize Unlimited).Count

2.查找并显示有关电子邮件地址的信息

2.1 - 显示所有收件人主要 + 别名电子邮件地址 + SIP 地址

PowerShell命令语法:

Get-Mailbox -ResultSize Unlimited |FL EmailAddresses

调整和定制

过滤显示输出详细信息

PowerShell命令语法:

Get-Mailbox -ResultSize Unlimited | Where {$_.name -Notlike '*DiscoverySearchMailbox*'} |FL EmailAddresses

2.2 - 显示每个收件人的每个别名+计数别名

PowerShell命令语法:

Get-Mailbox | FL name, @{name="count";expression={[array]($_.EmailAddresses).Count}},EmailAddresses

2.3 - 显示特定邮箱的主+别名电子邮件地址+SIP地址

PowerShell命令语法:

Get-Mailbox <Identity>| Select -Expand EmailAddresses Alias

PowerShell 命令示例:

Get-Mailbox John | Select -Expand EmailAddresses Alias

2.4 -显示Office 365用户UPN名称

PowerShell命令语法:

Get-MsolUser | Select DisplayName,UserPrincipalName

3.查找具有特定域名后缀的邮件收件人

3.1 - 查找具有特定域名后缀的 UPN 的 Office 365 用户

PowerShell命令语法:

Get-MsolUser -DomainName <Domain Suffix>| FL UserPrincipalName

PowerShell 命令示例:

Get-MsolUser -DomainName o365info.com | FL UserPrincipalName

3.2 - 查找具有特定域名后缀的邮箱电子邮件地址

PowerShell命令语法:

Get-Mailbox | Where {$_.emailaddresses -like "*<Domain Suffix>*"} | FL Name,Alias,EmailAddresses

PowerShell 命令示例:

Get-Mailbox | Where {$_.emailaddresses -like "*o365info.com*"} | FL Name,Alias,EmailAddresses

3.3 - 查找具有特定域名后缀的通讯组电子邮件地址

PowerShell命令语法:

Get-DistributionGroup | Where {$_.emailaddresses -like "*<Domain Suffix>*"} | FL Name,Alias,EmailAddresses

PowerShell 命令示例:

Get-DistributionGroup | Where {$_.emailaddresses -like "*o365info.com*"} | FL Name,Alias,EmailAddresses

3.4 - 查找具有特定域名后缀的联系人电子邮件地址

PowerShell命令语法:

Get-Mailcontact | Where {$_.emailaddresses -like "*<Domain Suffix>*"} | FL Name,Alias,EmailAddresses

PowerShell 命令示例:

Get-Mailcontact | Where {$_.emailaddresses -like "*o365info.com*"} | FL Name,Alias,EmailAddresses

4. 查找具有特定属性的邮件收件人

4.1 - 查找具有特定别名的邮箱电子邮件地址

PowerShell命令语法:

Get-Mailbox | Where {$_.EmailAddresses -like "*<Alias>*"} | FL Name,Alias,EmailAddresses

PowerShell 命令示例:

Get-Mailbox | Where {$_.EmailAddresses -like "*John*"} | FL Name,Alias,EmailAddresses

4.2 - 查找具有特定别名的通讯组电子邮件地址

PowerShell命令语法:

Get-DistributionGroup | Where {$_.EmailAddresses -like "*<Alias>*"} | FL Name,Alias,EmailAddresses

PowerShell 命令示例:

Get-DistributionGroup | Where {$_.EmailAddresses -like "*John*"} | FL Name,Alias,EmailAddresses

4.3 - 查找具有特定别名的联系人电子邮件地址

PowerShell命令语法:

Get-Mailcontact | Where {$_.EmailAddresses -like "*<Alias>*"} | FL Name,Alias,EmailAddresses

PowerShell 命令示例:

Get-Mailcontact| Where {$_.EmailAddresses -like "*John*"} | FL Name,Alias,EmailAddresses

4.4 - 查找具有特定别名+特定域名后缀的电子邮件地址

PowerShell命令语法:

Get-Mailbox | Where { $_.Name -like "*<Alias>*" -and $_.EmailAddresses -like "*<Domain Suffix>*" } | FL Name,Alias,EmailAddresses

PowerShell 命令示例:

Get-Mailbox | Where { $_.Name -like "*John*" -and $_.EmailAddresses -like "*o365info.com*" } | FL Name,Alias,EmailAddresses

4.5 - 查找具有特定别名+特定域名后缀的电子邮件地址

PowerShell命令语法:

Get-Mailbox | Where { $_.UsageLocation -like "**" } |FL Name,Alias,EmailAddres,UsageLocation

PowerShell 命令示例:

Get-Mailbox | Where { $_.UsageLocation -like "*US*" } |FL Name,Alias,EmailAddres,UsageLocation

5.查看邮箱统计信息

有关邮箱和文件夹大小的信息

5.1 - 显示有关邮箱大小的信息(邮箱统计)

PowerShell命令语法:

Get-MailboxStatistics <Identity> | FL DisplayName,StorageLimitStatus,TotalItemSize,TotalDeletedItemSize,ItemCount,DeletedItemCount

PowerShell 命令示例:

Get-MailboxStatistics John | FL DisplayName,StorageLimitStatus,TotalItemSize,TotalDeletedItemSize,ItemCount,DeletedItemCount

5.2 - 显示有关所有现有邮箱大小的信息

PowerShell命令语法:

Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | FL DisplayName,StorageLimitStatus,TotalItemSize,TotalDeletedItemSize,ItemCount,DeletedItemCount

PowerShell 命令示例:

Get-MailboxStatistics John | FL DisplayName,StorageLimitStatus,TotalItemSize,TotalDeletedItemSize,ItemCount,DeletedItemCount

5.3 - 显示有关特定文件夹大小的信息

PowerShell命令语法:

Get-MailboxStatistics <Identity> -FolderScope <folder> | Select Name,FolderSize,ItemsinFolder

PowerShell 命令示例:

Get-MailboxStatistics John -FolderScope Inbox | Select Name,FolderSize,ItemsinFolder

有关邮箱配额大小的信息

5.4 - 查看分配给单个邮箱的所有配额

PowerShell命令语法:

Get-Mailbox <Identity>| Fl *Quota

PowerShell 命令示例:

Get-Mailbox John | FL *Quota

5.5 - 查看分配给所有邮箱的所有配额

PowerShell命令语法:

Get-Mailbox -ResultSize Unlimited | FL DisplayName,Alias,*Quota

5.6 - 查看分配给单个存档邮箱的所有配额

PowerShell命令语法:

Get-MailboxStatistics <Identity> -Archive | FL DisplayName,Alias,*Quota

PowerShell 命令示例:

Get-MailboxStatistics John -Archive | FL DisplayName,Alias,*Quota

5.7 - 查看所有存档邮箱的统计信息

PowerShell命令语法:

Get-Mailbox -Archive -ResultSize Unlimited | Get-MailboxStatistics -Archive | Select DisplayName,StorageLimitStatus,@{name="TotalItemSize (MB)";expression={[math]::Round(($_.TotalItemSize.Split("(")[1].Split(" ")[0].Replace(",","")/1MB),2)}},@{name="TotalDeletedItemSize (MB)";expression={[math]::Round(($_.TotalDeletedItemSize.Split("(")[1].Split(" ")[0].Replace(",","")/1MB),2)}},ItemCount,DeletedItemCount | Sort "TotalItemSize (MB)" -Descending

5.8 - 显示活动邮箱和用户的列表

PowerShell命令语法:

Get-Mailbox -Resultsize unlimited| Get-MailboxStatistics | Where {$_.lastlogontime -ne $Null} | Select Displayname

5.9 - 显示 Office 365 中非活动邮箱帐户列表

PowerShell命令语法:

Get-mailbox -Resultsize unlimited| Get-MailboxStatistics | Select Displayname,Lastlogontime | Sort-Object LastLogonTime

6. 显示邮件收件人

6.1 - 显示通讯组列表

PowerShell命令语法:

Get-DistributionGroup | FL Name,DisplayName,GroupType,PrimarySmtpAddress

6.2 - 显示邮件联系人列表

PowerShell命令语法:

Get-MailContact

7. 将邮箱信息导出到文件(CSV 格式)

7.1 - 导出用户邮箱信息

PowerShell命令语法:

Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Select RecipientTypeDetails,Name,Alias | Export-CSV <Path>

PowerShell 命令示例:

Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Select RecipientTypeDetails,Name,Alias | Export-CSV C:\Info\o365-User-Mailbox.csv

7.2 - 导出房间邮箱信息

PowerShell命令语法:

Get-Mailbox -Filter '(RecipientTypeDetails -eq "RoomMailBox")' | Select RecipientTypeDetails,Name,Alias | Export-CSV <Path>

出口设备邮箱信息

PowerShell命令语法:

Get-Mailbox -Filter '(RecipientTypeDetails -eq "EquipmentMailbox")' | Select RecipientTypeDetails,Name,Alias | Export-CSV <Path>

7.3 - 导出共享邮箱信息

PowerShell命令语法:

Get-Mailbox -Filter '(RecipientTypeDetails -eq "SharedMailbox")' | Select RecipientTypeDetails,Name,Alias | Export-CSV <Path> -NoTypeInformation

7.4 - 导出有关邮箱内容的信息(文件夹、文件夹中的项目等)

PowerShell命令语法:

Get-Mailbox | Select-Object alias | ForEach-Object {Get-MailboxFolderStatistics -Identity $_.alias | Select Identity,ItemsInFolder,FolderSize} | Export-CSV <Path> -NoTypeInformation

7.5 - 导出有关邮箱LastLogonTime + LastLogoffTime 的信息

PowerShell命令语法:

Get-Mailbox -ResultSize unlimited | Get-MailboxStatistics | Select DisplayName,lastlogontime,lastlogofftime | Sort-Object DisplayName -descending | Export-CSV <Path> -NoTypeInformation

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯