我厌倦了尝试使用 Outlook 的 GUI 创建/删除/管理收件箱规则;这需要很长时间,而且很糟糕。
我了解 powershell 中有 cmdlet 允许您在服务器端和客户端执行此操作。
我无法访问服务器端,我只对使用这些规则管理我自己的收件箱感兴趣。
以下文章似乎提到了一些对此非常有用的 cmdlet,但我无法使用它们,因为我不知道从哪里导入库:
https://www.codetwo.com/admins-blog/managing-outlook-rules-powershell/
如何首先安装 cmdlet?我在哪里可以获得它们,我需要用什么将它们导入到脚本中?
将其放在这里是因为该评论部分太长了。
驯服您的邮箱是一个问题,您是在独立客户端(胖客户端、云客户端或两者兼有 - 请记住您可以直接在 Outlook 胖客户端中添加 Outlook.com 帐户)或您企业中的用户谈论您。 .
您不使用 Exchange cmdlet 来控制本地 Outlook。要使用 Exchange cmdlet,您必须在您的计算机上安装 Exchange 命令行管理程序...
...或使用 PowerShell 隐式远程处理将这些 cmdlet 代理到您的主机。隐式远程处理也是您将 Exchange cmdlet 用于 O365 的方式。这些是 Microsoft 的详细记录/详细信息,以及遍布网络和 Youtube 视频的大量博客。
甚至为此工作的预建模块。
Outlook Online 有一个 Rest API 可以与 Exchange、EWS 一样使用
Office 365 管理 API 概述
Outlook 客户端
使用 PowerShell 对 Outlook 收件箱进行数据挖掘
您必须是 O365 中的管理员才能执行此操作。O365 中的 Outlook 不是 Exchange,就像桌面上的 Outlook 不是 Exchange。您必须使用 Outlook COM(如上所述和以下)在 Outlook 客户端上工作,这不是 Online 的事情。
据我所知,没有可用于 Outlook 的标准 powershell 模块,但是您可以使用可以访问
Microsoft.Office.Interop.Outlook
命名空间的 Outlook API。创建新规则的简短示例如下:首先我们得到命名空间:
现在我们指定原始文件夹(收件箱),创建一个新规则并指定要复制到的文件夹(通知)
您可以在此处找到有关在 powershell 中使用 Outlook 命名空间的更多示例和信息: https ://docs.microsoft.com/en-us/archive/msdn-magazine/2013/march/powershell-managing-an-outlook-mailbox-带powershell
此外,您可以在此处找到有关 Outlook 对象模型的所有信息: https ://docs.microsoft.com/nl-nl/office/vba/api/overview/Outlook/object-model