使用 Exchange Online PowerShell 显示 Microsoft 365 或Office 365邮箱信息

重要

查看新的 Exchange 管理中心! 体验是现代的、智能的、可访问的,并且更好。 个性化仪表板、管理跨租户迁移、体验改进的组功能等。 立即尝试

管理员可以了解如何使用 Exchange Online PowerShell 显示有关其 Microsoft 365 或 Office 365 组织中的邮箱的信息。

为了让你了解 Microsoft 365 和 Office 365 中的 PowerShell 可以执行的一些操作,我们来看看 Exchange Online PowerShell 中的用户邮箱。

准备工作

若要连接到 Exchange Online PowerShell,请参阅连接到 Exchange Online PowerShell

使用 Exchange Online PowerShell 显示邮箱信息

你可以轻松获取单个用户邮箱的相关信息。 例如,以下命令可返回 Ken Myer 邮箱的一些信息:

Get-Mailbox -Identity "Ken Myer"

该命令将返回类似于以下的信息:

Name      Alias       ServerName      ProhibitSendQuota
----      -----       ----------      -----------------
kenmyer   kenmyer     bn1pr02mb038    49.5 GB (53,150,220,288 bytes)

可以看到 Ken 的别名及其邮箱大小配额等内容。 但与Exchange Online邮箱关联的信息远不止 Get-Mailbox cmdlet 返回的四个属性。

以下作为示例的命令将显示有关特定邮箱的所有信息:

Get-Mailbox -Identity "Ken Myer" | Format-List

命令指示Exchange Online PowerShell 返回列表中邮箱的所有可用属性。 大约有 200 种不同的属性和属性值。 还可以使用 Format-ListFormat-Table cmdlet 仅返回特定的属性值。 例如,还可以使用以下命令查看 Ken Myer 的诉讼保留相关属性:

Get-Mailbox -Identity "Ken Myer" | Format-List DisplayName, LitigationHoldEnabled, LitigationHoldDate, LitigationHoldOwner, LitigationHoldDuration

使用 Format-List cmdlet 时,还可以使用通配符。 例如,所有诉讼保留属性都以字母 lit开头。 你可以使用以下命令检索相同的信息:

Get-Mailbox -Identity "Ken Myer" | Format-List DisplayName, Lit*

此命令告知 Get-Mailbox 检索 Ken 的 DisplayName 属性的值以及名称以字母 lit开头的任何属性的值。 下面是我们得到的一个示例:

DisplayName            : Ken Myer
LitigationHoldEnabled  : False
LitigationHoldDate     :
LitigationHoldOwner    :
LitigationHoldDuration : Unlimited

可以通过省掉 Identity 参数来返回有关多个邮箱的信息。 此示例返回所有邮箱的 DisplayNameLitigationHoldEnabled 属性:

Get-Mailbox -ResultSize unlimited | Format-Table DisplayName, LitigationHoldEnabled -Auto

在许多情况下,你只想查看邮箱的子集。 例如,假设你需要获取已分配诉讼保留的所有邮箱的列表。 可以将 Where-Object cmdlet 与 Get-Mailbox cmdlet 结合使用。 Where-Object cmdlet 需要一个筛选短语来告诉Exchange Online PowerShell 你感兴趣的邮箱集。

在最简单的形式中,筛选短语使用 语法 "<PropertyName> -<ComparisonOperator> <PropertyValue>"

一些常用的比较运算符包括:

  • eq (等于;不区分大小写)

  • ne (不相等;不区分大小写)

  • gt (大于)

  • lt (小于)

有关比较运算符的完整列表,请参阅 Where-Object

<PropertyValue>的值取决于 属性,可以是字符串、数字、布尔值 (或$False) $True等值,也可以是) ( $Null 值。 带空格的文本值需要用引号括住值。 数值、布尔值 和 $Null 不需要在值周围使用引号。

返回到已分配诉讼保留的所有邮箱的示例,筛选短语为 "LitigationHoldEnabled -eq $True"

  • 属性名称为 LitigationHoldEnabled

  • 比较运算符为 eq

  • 要查找的属性值为 $True

获得筛选器短语后,可以使用以下语法构造命令的 Where-Object 部分:

Get-Mailbox -ResultSize unlimited | Where-Object {$_.<Filter Phrase>}

下面是我们示例的 命令:

Get-Mailbox -ResultSize unlimited | Where-Object {$_.LitigationHoldEnabled -eq $True}

又如,假设你想确保你的所有用户均已启用垃圾邮件规则。 下面是一个快速命令,用于查找未启用该规则的任何用户:

Get-Mailbox -ResultSize unlimited | Get-MailboxJunkEmailConfiguration | Where-Object {$_.Enabled -eq $False}

这仅是一个示例。 如果要基于某个设置显示一组邮箱,但无法在Microsoft 365 管理中心中筛选该设置,请执行以下步骤:

  1. 通过运行 命令 Get-Mailbox -Identity "<MailboxIdentity" | Select-Object * 列出邮箱的所有属性,查找与你感兴趣的设置对应的邮箱属性。 <MailboxIdentity> 是邮箱 (名称、电子邮件地址、别名等的任何唯一标识符)

  2. 构造Office 365 PowerShell 命令,如下所示:Get-Mailbox -ResultSize unlimited | Where-Object {$_.<PropertyName> -<ComparisonOperator> <PropertyValue>}