Remove-Message
此 cmdlet 仅适用于本地 Exchange。
使用 Remove-Message cmdlet 可以删除邮箱服务器或边缘传输服务器上队列中的邮件。
有关以下语法部分的参数设置的详细信息,请参阅 Exchange cmdlet 语法。
语法
Remove-Message
-Filter <String>
[-Server <ServerIdParameter>]
[-Confirm]
[-WhatIf]
[-WithNDR <Boolean>]
[<CommonParameters>]
Remove-Message
[-Identity] <MessageIdentity>
[-Confirm]
[-WhatIf]
[-WithNDR <Boolean>]
[<CommonParameters>]
说明
发送给多个收件人的邮件可能位于多个队列中。 如果指定 Identity 参数,并且该标识仅与一封邮件相匹配,则会从单个队列中删除该邮件。 如果此标识与多封邮件匹配,则将收到错误消息。 要通过一步操作即从多个队列中删除邮件,必须使用 Filter 参数。 如果试图删除当前正在传递的邮件,则邮件状态将更改为 PendingDelete。 邮件传递不会中断,但是,如果传递失败并导致邮件重新进入队列,则会将其删除。
您必须先获得权限,然后才能运行此 cmdlet。 虽然本主题中列出了此 cmdlet 的所有参数,但如果这些参数并未包含在分配给您的权限中,那么您将无法使用这些参数。 若要查找在贵组织中运行任何 cmdlet 或参数所需的权限,请参阅 Find the permissions required to run any Exchange cmdlet。
示例
示例 1
Remove-Message -Server Server1 -Filter "FromAddress -eq 'Kweku@contoso.com'" -WithNDR $false
本示例不生成 NDR 便删除满足下列条件的所有邮件:
- 消息由发件人 Kweku@contoso.com发送。
- 这些邮件已在服务器 Server1 上排队。
参数
-Confirm
Confirm 开关指定是否显示确认提示。 此开关对 cmdlet 造成的影响取决于在你继续操作之前 cmdlet 是否需要确认。
- 破坏性 cmdlet (例如,Remove-* cmdlet) 具有内置的暂停,该暂停会强制你在继续操作之前确认命令。 对于这些 cmdlet,您可以使用此确切语法跳过确认提示:
-Confirm:$false
。 - 大多数其他 cmdlet (例如,New-* 和 Set-* cmdlet) 没有内置暂停。 对于这些 cmdlet,指定不含值的 Confirm 开关会引入暂停,从而强制要求你先确认命令,然后再继续操作。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Filter
Filter 参数使用 OPATH 筛选器语法指定一个或多个消息。 OPATH 筛选器包括消息属性名称,后跟比较运算符和值 (,例如,) "FromAddress -like '*@contoso.com'"
。 有关可筛选消息属性和比较运算符的详细信息,请参阅 队列中消息的属性 和 在 Exchange 命令行管理程序中查找队列和消息。
可以使用 和 比较运算符指定多个条件。 不以整数表示的属性值必须用引号 (“) 括起来。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Identity
Identity 参数指定邮件。 参数的有效输入使用语法 Server\Queue\MessageInteger 或 Queue\MessageInteger 或 MessageInteger,例如 Mailbox01\contoso.com\5 或 10。 有关消息标识的详细信息,请参阅 消息标识。
Type: | MessageIdentity |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Server
服务器参数指定要运行此命令的Exchange服务器。 可以使用唯一标识该服务器的任何值。 例如:
- 名称
- FQDN
- 可分辨名称 (DN)
- Exchange 旧版 DN
Exchange 旧版 DN
不能在同一命令中同时使用 Server 参数和 Filter 参数。 不能在同一命令中同时使用 Server 参数和 Identity 参数。
Type: | ServerIdParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-WhatIf
WhatIf 开关模拟命令操作。 可以使用此开关在不实际应用将会发生的更改的情况下预览这些更改。 不必为此开关指定值。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-WithNDR
WithNDR 参数指定是否将未送达报告 (NDR) 返回给邮件的发件人。 默认值为 $true。 此参数可以同时与 Identity 参数和 Filter 参数集一起使用。
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
输入
Input types
若要了解此 cmdlet 接受的输入类型,请参阅 cmdlet 的输入和输出类型。 如果 cmdlet 的"输入类型"字段为空,则表明此 cmdlet 不接受输入数据。
输出
Output types
若要了解此 cmdlet 接受的返回类型(亦称为"输出类型"),请参阅 cmdlet 的输入和输出类型。 如果"输出类型"字段为空,则表明此 cmdlet 不返回任何数据。