Exchange 命令管理程序每日提示

 

适用于: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2007-08-24

本主题列出了所有的 Exchange 命令行管理程序每日提示,并指向相关的 Microsoft Exchange Server 2007 帮助主题或其他相应的 Microsoft 文档。每次打开 Exchange 命令行管理程序时都会显示每日提示。

若要查看所需日期的提示,请打开 Exchange 命令行管理程序并运行 Get-Tip cmdlet。

提示 相关主题

您是否知道 Identity 参数是“位置参数”?这意味着可以使用:

Get-Mailbox "domain\user" 而不使用: Get-Mailbox -Identity "domain\user"

这种方式使用起来很简便!

若要返回在路径中找到的所有脚本,请键入:

Get-Command -Type ExternalScript

对于有用的快捷方式,请在配置文件中对其进行分配:

Function Get-Scripts { Get-Command -Type ExternalScript }

每次要进行操作时,您是否厌倦了键入较长的命令?请设置别名!请键入:

Set-Alias GetSg Get-StorageGroup

若要查看当前所有别名,请键入:

Get-Alias

是否要将邮箱数据直接导出到 .pst 文件?请使用 Export-Mailbox cmdlet。您甚至可以使用一条命令导出多个邮箱。请键入:

Get-Mailbox | Export-Mailbox -PSTFolderPath <path to folder where data will be exported>

您还可以使用 Import-Mailbox cmdlet 将 .pst 文件导入邮箱。请键入:

Get-Mailbox | Import-Mailbox -PSTFolderPath <path to folder with <alias>.pst files to import>

是否要查看具有自定义筛选器的动态通讯组的成员?仅使用 Get-Recipient cmdlet。请键入:

$DDG = Get-DynamicDistributionGroup "Contoso Marketing Managers"

Get-Recipient -RecipientPreviewFilter $DDG.RecipientFilter

Exchange 命令行管理程序也是计算器!请在下面的命令行中直接尝试:

1.2343+3123 or (23/435)*2

 

获得命令行帮助。是否需要帮助?请键入:

Help <cmdlet-name> or <cmdlet-name> -?

还可以执行通配符搜索和部分名称匹配:

Help *UM*

使用下列命令可以获得有关 cmdlet 的更多详细信息:

Get-Command <cmdlet-name>

查看 cmdlet 的所有参数的快捷方式是:

Get-Command <cmdlet-name> | Format-List Definition

或缩写:

Gcm <cmdlet-name> | Fl Def*

Unix 用户应当熟悉颚化符 () 字符。它表示根目录的快捷方式。若要查看它在默认情况下的计算结果,请键入:

Dir ~

可以将它用作有用的快捷方式:

Cp SomeFile "~\My Documents"

是否要移动邮箱?请键入:

Move-Mailbox

按如下所示,可以将所有用户从服务器 SRV1 移动到服务器 SRV2:

Get-Mailbox -Server SRV1 | Move-Mailbox -TargetDatabase SRV2

在 Exchange 命令行管理程序中,Ctrl+C 等同于硬中断命令。如果命令的运行时间太长,或者要快速取消操作,请按 Ctrl+C 停止执行。

 

在 Exchange 命令行管理程序中,Pushd 和 Popd 的工作方式与其在 cmd.exe 中的工作方式相同。请键入:

Pushd <location>

XML 所有内容!Exchange 命令行管理程序将 XML 视为本机类型,以便可以进行如下有趣的操作:

$Sample = [XML](Get-Content SomeXMLFile.xml)

此命令将 $Sample 指定给实际 XML 对象。若要对其进行查看,请键入:

$Sample

若要对其进行导航,请键入:

$Sample.Prop1.Prop2

若要加载 XML 数据,不需要进行文本分析!

以“Config”结尾的 cmdlet 管理单个配置,或者是每个服务器,或者是一个组织。对于这些任务,不必指定标识,因为只有一个配置实例。如果配置是每个服务器,可能必须指定 Server 参数。

若要获得 Exchange 2007 服务器上不属于已启用统一消息类型的所有用户的列表,请使用:

Get-UmMailbox | ForEach { If($_.UmEnabled -Eq $False){$_.Name}}

若要获得 Exchange 2007 服务器上属于已启用统一消息类型的所有用户的列表,请使用:

Get-UmMailbox | ForEach { If($_.UmEnabled -Eq $True){$_.Name}}

若要采用表的格式将用户别名与用户的 Exchange 2007 服务器名称和电话分机号一起显示,请键入:

Get-UmMailbox | Format-Table ServerName,@{e={$_.SamAccountName};Label="User Alias"},@{Expression="Extensions";Label="Telephone numbers"}

若要显示对于与 UM IP 网关服务器关联的出站呼叫和智能寻线禁用的 UM IP 网关服务器名称的列表,请使用:

Get-UMIPGateway | ForEach {If($_.OutCallsAllowed -Eq $False){ "Gateway Name = " +$_.Name;ForEach ($HuntGroup In $_.Huntgroups){"Huntgroups " + $Huntgroup}}}

如果要测试所有 IP 阻止列表提供程序,只需将 Get-IpBlockListProvider cmdlet 通过管道传递到 Test-IpBlockListProvider cmdlet:

Get-IpBlockListProvider | Test-IpBlockListProvider -IpAddress 192.168.0.1

使用 Remove 动词删除对象之前,请使用 WhatIf 参数验证结果是否是预期结果。

有时,将 cmdlet 的输出转换成字符串与本机 cmdlet 互操作很有用。例如,请键入:

Get-Command | Out-String | Findstr "command"

获得所有 Win32 WMI 信息,例如,性能计数器和本地计算机配置。例如,请键入:

Get-WMIObject Win32_PerfRawData_PerfOS_Memory

是否讨厌垃圾邮件?谁不?通过运行下面两个命令,可以用 Exchange 命令行管理程序配置实时阻止列表 (RBL) 提供程序:

Set-IPBlockListProvidersConfig -Enabled $True -ExternalMailEnabled $True

然后

Add-IPBlockListProvider -Name <Name of RBL Provider> -LookupDomain <FQDN of RBL Provider> -AnyMatch $True

从 Exchange 命令行管理程序访问事件日志。若要检索整个事件日志,请运行:

Get-EventLog Application | Format-List

若要检索所有与 Exchange 相关的事件,请运行:

Get-EventLog Application | Where { $_.Source -Ilike "*Exchange*" }

Exchange 命令行管理程序的一个优点是 cmdlet 可以将对象发到控制台。然后,可以处理此输出,并以有趣的方式组织它。例如,若要以列表格式进行快速查看,请使用 Format-Table

Get-Mailbox | Format-Table Name,Database,RulesQuota

是否忘记过属性名称?这不是问题,因为可以使用通配符来检索与您指定的名称组成部分匹配的所有属性:

Get-Mailbox | Format-Table Name,*SMTP*

是否要处理包含在 CSV 文件中的数据?请使用 Import-CSV 将数据指定给对象。例如,请键入:

$MyCSV = Import-CSV TestFile.CSV

然后,可以在 Exchange 命令行管理程序中方便地处理数据。例如,如果 CSV 数据中有一个名为 Mailboxes 的列,则可以使用下列命令按 Mailboxes 列对该数据进行排序或分组:

若要排序: $MyCSV | Sort Mailboxes

若要分组: $MyCSV | Group Mailboxes

此命令将检查所有邮箱服务器,并重新连接任何一个邮箱存储中所有被唯一标识但已断开连接的邮箱:

Get-ExchangeServer | `

Where { $_.IsMailboxServer -Eq '$True' } `

| ForEach { Get-MailboxStatistics -Server $_.Name `

| Where { $_.DisconnectDate -NotLike '' } `

| ForEach { Connect-Mailbox -Identity `

$_.DisplayName -Database $_.DatabaseName} }

制表符完成功能可以减少完成 cmdlet 所需要的按键数。只需按 Tab 键即可完成正在键入的 cmdlet。只要输入中有连字号 (-),就可以使用制表符完成功能。例如:

Get-Send<tab>

完成后应为 Get-SendConnector。甚至可以使用正则表达式,例如:

Get-U*P*<tab>

输入此命令时按 Tab 键将遍历与该表达式匹配的所有 cmdlet,例如,统一消息邮箱策略 cmdlet。

是否要在实验室中创建一组测试用户?请使用此命令:

1..100 | ForEach { Net User "User$_" MyPassword=01 /ADD /Domain; Enable-Mailbox "User$_" -Database <MailboxDatabaseName> }

是否要更改 Outlook Web Access 虚拟目录的身份验证设置?请尝试以下命令示例。它会将身份验证从基于窗体的身份验证更改为 Windows 身份验证:

Set-OwaVirtualDirectory -Identity "OWA (Default Web Site)" -FormsAuthentication 0 -WindowsAuthentication 1

是否要设置所有或某些 Outlook Web Access 虚拟目录的属性?请通过管道将输出 Get-OwaVirtualDirectory 传递到 Set-OwaVirtualDirectory cmdlet。例如,以下命令将设置所有 Outlook Web Access 虚拟目录的 Gzip 级别:

Get-OwaVirtualDirectory | Set-OwaVirtualDirectory -GzipLevel High

是否要从用户的设备列表中删除 ActiveSync 设备?请键入:

Remove-ActiveSyncDevice

此 cmdlet 可用于对没有与服务器成功同步的设备进行故障排除。

是否要从移动设备中清除所有数据?请使用:

Clear-ActiveSyncDevice

指定一天中可清除设备的时间,或设备下一次连接到服务器时完成该任务。

是否要查看与用户的邮箱同步的所有设备的列表?请键入:

Get-ActiveSyncDeviceStatistics

将返回多种信息,包括设备名称、操作系统和最后同步时间。

是否某个用户要求恢复其移动设备同步密码?若要恢复用户的密码,请键入:

Get-ActiveSyncDeviceStatistics -ShowRecoveryPassword

是否要将存储组路径移动到其他位置?请键入:

Move-StorageGroupPath -LogFolderPath DestLogFolder

若要只更改路径设置而不移动数据,请对此命令使用 ConfigurationOnly 参数。在处理灾难恢复时,此命令尤其有用。

Caution警告:
错误地使用此 cmdlet 将导致数据丢失。

是否要将数据库路径移动到其他位置?请键入:

Move-DatabasePath -EdbFilePath DestFileName

若要更改文件路径设置而不移动数据,请对此命令使用 ConfigurationOnly 参数。在处理灾难恢复时,此命令尤其有用。

Caution警告:
错误地使用此 cmdlet 将导致数据丢失。

若要对特定统一消息拨号计划设置拨号限制,请键入:

$Dp = Get-UmDialPlan -Identity <Your_DialPlan_Identity>

$Dp.ConfiguredInCountryGroups.Add("Group1,91xxxxxxxxxx,91xxxxxxxxxx")

$Dp.ConfiguredInCountryGroups.Add("Group1,9xxxxxxxxxx,91xxxxxxxxxx")

$Dp.ConfiguredInCountryGroups.Add("Group1,9xxxxxxx,9xxxxxxx")

$Dp.AllowedInCountryGroups.Add("Group1")

$Dp.OutsideLineAccessCode = 9

$Dp | Set-UmDialPlan

是否需要以一种简便的方式将新的主 SMTP 地址添加到一组邮箱?以下命令将新建电子邮件地址策略,该策略会将 @contoso.com 域分配给在 company 字段中包含 Contoso 的所有邮箱的主 SMTP 地址:

New-EmailAddressPolicy -Name Contoso -RecipientFilter {Company -Eq "Contoso"} -EnabledPrimarySMTPAddressTemplate "@contoso.com"

是否要检索一组具有相似标识的对象?可以将通配符与 Identity 参数一起使用,以匹配多个对象。请键入:

Get-Mailbox *John*

Get-ReceiveConnector *toso.com

Get-JournalRule *discovery*

是否要配置一组有相似标识的对象?在使用 Get cmdlet 并将输出通过管道传递到 Set cmdlet 时,可以将通配符与 Identity 参数一起使用。请键入:

Get-Mailbox *John* | Set-Mailbox -ProhibitSendQuota 100MB

此命令将匹配邮箱标识中包含名称“John”的所有邮箱,并将 ProhibitSendQuota 参数设置为 100MB

大多数 cmdlet 可以将一个名词的输出传递给另一个名词,以查看或修改相关对象。例如,可能需要对在某服务器的特定邮箱数据库中驻留的所有邮箱设置邮箱限制。可以使用以下命令执行该操作:

Get-MailboxDatabase "Executives" | Get-Mailbox | Set-Mailbox -ProhibitSendQuota 300MB

此命令可检索驻留在“高级管理人员”邮箱数据库中的所有邮箱,并将它们的 ProhibitSendQuota 值设置为 300MB

是否忘记了某个 cmdlet 的可用参数?只需使用制表符完成功能!请键入:

Set-Mailbox -<tab>

键入连字号 (-) 并按 Tab 键,可以遍历 cmdlet 上的所有可用参数。要缩小搜索范围?键入参数名称的一部分,然后按 Tab 键。请键入:

Set-Mailbox -Prohibit<tab>

向 ping 说再见。向 Test-MapiConnectivity 说您好!使用 Test-MapiConnectivity 可以解决用户和服务器之间的连接问题。通过将 Test-MapiConnectivity 与多种 cmdlet 组合,可以找到具体问题,而不必手动搜集信息:

邮箱数: Get-Mailbox <Mailbox Name> | Test-MapiConnectivity

邮箱数据库: Get-MailboxDatabase <Database Name> | Test-MapiConnectivity

服务器: Get-MailboxServer <Server Name> | Test-MapiConnectivity

是否要向有相似名称的多个通讯组添加别名?请键入:

Get-DistributionGroup *Exchange* | Add-DistributionGroupMember -Member kim

此命令会将别名“kim”添加到包含单词“Exchange”的所有通讯组中。

是否要准确记录在使用 Exchange 命令行管理程序时发生的事情?使用 Start-Transcript cmdlet。运行此 cmdlet 之后,您所做的任何事情都将记录到您指定的文本文件中。若要停止记录会话,请使用 Stop-Transcript cmdlet。

注意,默认情况下 Start-Transcript cmdlet 将覆盖目标文本文件。如果要将会话附加到现有文件,请使用 Append 参数:

Start-Transcript c:\MySession.txt -Append

 

下面是将命令重复给定次数的方便提示。不需要编写 For 循环,请使用以下语法:

1..10 | ForEach { "do something here" }

例如,以下命令将在服务器 TestServer 上创建 10 个名称为 sg1sg10 的新存储组:

1..10 | ForEach { New-StorageGroup -Name "sg$_" -server TestServer }

是否想知道邮箱数据库最后完成备份的时间?请键入:

Get-ExchangeServer | Get-MailboxDatabase -Status | Format-Table Name, *Back*

是否要将所有邮箱从一个邮箱数据库移动到另一个邮箱数据库?可以使用以下命令很方便地完成此操作:

Get-MailboxDatabase <Source Mailbox Database> | Get-Mailbox | Move-Mailbox -TargetDatabase <Destination Mailbox Database>

甚至可以将通配符与 Get-MailboxDatabase cmdlet 一起使用,以便将多个源邮箱数据库中的邮箱合并到单个目标邮箱数据库中。

您的用户是否存在这种情况:能够访问网络,但一直是您 Exchange 组织以外的外部邮件帐户?通过使用 Exchange Server 2007,现在可以创建作为正常 Active Directory 帐户的已启用邮件的用户,但其行为仍然类似于已启用邮件的联系人。通过使用 Enable-MailUser cmdlet,可以向在 Exchange 服务器上尚不具有邮箱的任何现有 Active Directory 用户添加电子邮件联系人属性。然后,Exchange 组织中的用户将能够向该用户的外部邮件帐户发送电子邮件。请键入:

Enable-MailUser -Identity <Active Directory Alias> -ExternalEmailAddress <Destination SMTP Address>

是否要更改邮箱数据库的默认禁止发送配额?请键入:

Set-MailboxDatabase <Mailbox Database Name> -ProhibitSendQuota <New Quota Size>

使用 ProhibitSendQuota 参数时,可以指定字节限定符。例如,如果要将禁止发送配额设置为 200 MB,请键入:

ProhibitSendQuota 200MB

还可以按相同方式配置 IssueWarningQuota 参数和 ProhibitSendReceiveQuota 参数。

是否想知道每个服务器正在运行的 Exchange Server 版本?请键入:

Get-ExchangeServer | Format-Table Name, *Version*

是否想知道哪些 Exchange 2007 服务器尚未使用有效的产品密钥进行配置,以及它们的试用期是否已经过期?请键入:

Get-ExchangeServer | Where { $_.IsExchange12TrialEdition -Eq $true } | Format-Table Name, *Trial*

是否要确定服务器正在运行 Exchange Server 2007 标准版还是 Exchange Server 2007 企业版?请键入:

Get-ExchangeServer <Server Name> | Format-Table Name, Edition

如果要查看所有 Exchange 服务器正在运行的版本,请忽略 <Server Name> 参数。

是否要创建可用于预订会议室的新资源邮箱?请键入:

New-Mailbox -Name <Conference Room Name> -UserPrincipalName <SMTP Address> -Database <Mailbox Database> -OrganizationalUnit <Organizational Unit> -Room

此命令可创建被禁用的 Active Directory 用户,该用户具有可接受其他用户的会议请求的邮箱。

是否要在所有出站电子邮件中添加免责声明?请键入:

$Condition = Get-TransportRulePredicate FromScope

$Condition.Scope = "InOrganization"

$Condition2 = Get-TransportRulePredicate SentToScope

$Condition2.Scope = "NotInOrganization"

$Action = Get-TransportRuleAction ApplyDisclaimer

$Action.Text = "Sample disclaimer text"

New-TransportRule -Name "Sample disclaimer" -Condition @($Condition, $Condition2) -Action @($Action)

是否要控制发送到特定域的电子邮件的属性?请使用 RemoteDomain cmdlet。使用 New-RemoteDomain cmdlet 可以新建远程域。请键入:

New-RemoteDomain -Name "Contoso.com Configuration" -DomainName contoso.com

然后,使用 Set-RemoteDomain cmdlet 修改想用于此远程域的属性:

Set-RemoteDomain "Contoso.com Configuration" -AutoReplyEnabled $True -AutoForwardEnabled $True

使用 Set-OwaVirtualDirectory cmdlet 可以控制 Outlook Web Access 用户可使用哪些功能。请键入:

Set-OwaVirtualDirectory "OWA (Default Web Site)" -ContactsEnabled $True -ChangePasswordEnabled $True

布尔值是可以作为 $True$False 进行计算的参数。布尔值通常用作对象上用于修改对象行为的标记。在 Exchange 命令行管理程序中,必须向布尔参数提供 $True$False10。不能接受其他值,包括 TrueFalse。例如,以下命令都可将 ExternalDsnSendHtml 参数设置为 $True

Set-TransportServer <Server Name> -ExternalDsnSendHtml $True

Set-TransportServer <Server Name> -ExternalDsnSendHtml 1

是否要删除从服务器的队列以某个域名发送,但不生成未送达报告 (NDR) 的所有电子邮件?请键入:

Remove-Message -WithNDR $False -Filter { FromAddress -Like "*@contoso.com" }

是否要以容易的方式在多个数据库和服务器上应用已删除项目的保留时间限制?请尝试通过以下命令在指定服务器的所有数据库上配置已删除项目的保留时间:

Get-MailboxDatabase -Server <Server Name> | Set-MailboxDatabase -ItemRetention 45.00:00:00

还可以在组织内的所有服务器上应用相同的已删除项目的保留时间限制或邮箱保留时间限制:

Get-MailboxDatabase | Set-MailboxDatabase -ItemRetention 45.00:00:00 -MailboxRetention 120.00:00:00

是否想知道 Active Directory 用户帐户对特定邮箱拥有什么权限?请使用:

Get-Mailbox <Mailbox to Check> | Get-MailboxPermission -User <Active Directory User>

是否想知道特定 Active Directory 用户对哪些邮箱拥有权限?请键入:

Get-Mailbox -ResultSize Unlimited | Get-MailboxPermission -User <Active Directory User> | Format-Table Identity, AccessRights, Deny

警告:此命令将枚举组织中的所有邮箱。如果有许多邮箱,则可能需要指定特定的邮箱。

是否希望获得组织中所有邮箱数据库的备份状态列表?请键入:

Get-MailboxDatabase -Status | Format-Table Name, Server, *Backup*

是否只需了解特定服务器上的邮箱的情况?请键入:

Get-MailboxDatabase -Server <Server Name> -Status | Format-Table Name, *Backup*

若要检索 Exchange 服务器或数据库的当前状态,请使用 Status 参数。例如:

Get-ExchangeServer -Status | Format-List

Get-MailboxDatabase -Server <Server Name> -Status | Format-List

是否要查看所有邮箱数据库的装入状态?请键入:

Get-MailboxDatabase -Status | Format-Table Name, Server, Mounted

服务器端筛选和客户端筛选之间的差异是什么?服务器端筛选应当与支持 Filter 参数的收件人和队列 cmdlet 一起使用,因为这些 cmdlet 可以返回大型结果集。服务器将使用您指定的条件对结果进行筛选,然后向您发送筛选结果。客户端筛选可以与任何 cmdlet 一起使用。所得到的整个结果集都将发送到客户端计算机,然后由后者筛选数据并提供经过筛选的结果集。客户端筛选使用 Where-Object cmdlet,后者可以缩写为 Where

通过使用 Exchange Server 2007 统一消息 (UM),可以将未经过身份验证的呼叫者拨打的某些电话分机号重定向到话务员,而不接通所拨打的分机。若要列出 UM 将未经过身份验证的呼叫者转到话务员而不是目标用户的这些用户,请键入:

Get-UMMailbox | `

Where-Object { $_.AllowUMCallsFromNonUsers -eq `

[Microsoft.Exchange.Data.Directory.Recipient.AllowUMCallsFromNonUsersFlags] "None" }

可以使用客户端筛选只返回想要查看或使用的数据。以下示例检索工程部门中的所有 Active Directory 用户帐户,并将结果放在带有 NameDepartment 两列的表中。使用 ResultSize 参数,Get-User cmdlet 将结果集限制为 2,000 个用户。

Get-User -ResultSize 2000 | Where { $_.Department -Eq "Engineering" } | Format-Table Name, Department

特殊变量 $_ 代表在管道中从一个 cmdlet 传递到其他 cmdlet 的对象。$_ 变量将由外壳程序自动启动并绑定到当前管道对象。可以像访问任何其他对象一样访问指定给 $_ 变量的对象的属性。以下示例显示如何查看通过管道传递的每个邮箱对象的 Name 属性:

Get-Mailbox | ForEach { $_.Name }

通过使用 Import-Csv cmdlet,可以导入 CSV 文件并将其视为对象。CSV 文件中的每一行将成为数组中的元素,而每一列则成为属性。可以将 CSV 文件指定给变量,也可以通过管道将其内容直接传递给其他 cmdlet。在以下示例中,CSV 文件中有三列,NameAliasEmailAddress,以及 ForEach cmdlet 将遍历的几行。每行中的数据都用于创建新的邮件联系人。

Import-Csv | ForEach { New-MailContact -Name $_.Name -Alias $_.Alias -ExternalEmailAddress $_.EmailAddress -OrganizationalUnit Users }

是否要自定义 Exchange 命令行管理程序配置文件?运行以下命令可以确定 Microsoft.PowerShell_profile.ps1 文件的位置:

$Profile

您可能必须创建 PSConfiguration 文件夹和 Microsoft.PowerShell_profile.ps1 文件。完成之后,可以添加您喜爱的功能和别名,每次打开 Exchange 命令行管理程序时都将加载它们。

使用以下命令可以配置一个托管文件夹策略,该策略将强制以 10MB 作为组织内所有邮箱的最大个人电子邮件文件夹大小。

New-ManagedFolder -Name "Reference e-mail folder with 10mb quota" -FolderName "Personal and Reference E-mail" -StorageQuota 10MB

New-ManagedFolderMailboxPolicy "Personal Folder Policy" -ManagedFolderLinks "Reference e-mail folder with 10mb quota"

Get-Mailbox -ResultSize Unlimited | Set-Mailbox -ManagedFolderMailboxPolicy "Personal Folder Policy"

Set-MailboxServer <Server Name> -ManagedFolderAssistantSchedule "Sun.12:00-Sun.11:00"

是否要查看运行命令时发生的所有事情?请在命令中包括 Verbose 参数。此参数指示 Exchange 命令行管理程序显示服务器在完成命令时所执行的每个操作的详细信息。此信息可以帮助您排除故障。

任何接受大小值的 cmdlet 都允许指定整数值的单位是 KB、MB、GB 还是 TB。例如:

Set-Mailbox "Kim Akers" -ProhibitSendQuota 200MB

Exchange 命令行管理程序可以记录以某种方式修改对象的所有 Exchange 相关命令。Exchange 相关命令的活动将记录在 PowerShell 事件日志中。若要启用 Exchange 相关命令的日志记录,请运行以下命令:

Set-ItemProperty HKLM:\SOFTWARE\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.Exchange.Management.PowerShell.Admin -Name LogpipelineExecutionDetails -value 1