gpt4 book ai didi

powershell - 如何使用 powershell 定位 outlook 子文件夹

转载 作者:行者123 更新时间:2023-12-02 23:51:51 26 4
gpt4 key购买 nike

我正在尝试过滤 outlook 子文件夹中的大约 2000 个自动警报。

我需要执行以下一系列步骤:

  1. 解析子文件夹帐户警报锁定
  2. 搜索具有可变用户名的特定短语
  3. 将带有变量用户名的整个短语转储到 csv 中

示例短语

Account Name:       jdoe

我在一个子文件夹中有所有需要的电子邮件,我只需要分析它们。

我已经让我的代码在收件箱中工作,但它没有覆盖子文件夹。

Add-Type -Assembly "Microsoft.Office.Interop.Outlook"
$Outlook = New-Object -ComObject Outlook.Application
$namespace = $Outlook.GetNameSpace("MAPI")

$inbox = $namespace.GetDefaultFolder([Microsoft.Office.Interop.Outlook.OlDefaultFolders]::olFolderInbox)

$RE = [RegEx]'(?sm)Account Name\s*:\s*(?<AccName>.*?)$.*'

$DebugPreference = 'Continue'

$Data = foreach ($item in $inbox.items) {
if ($item.body -match $RE) {
Write-Host "ding "
[PSCustomObject]@{ AccName = $Matches.AccName }
}
}

$Data
$Data | Export-CSv '.\data.csv' -NoTypeInformation

最佳答案

根据 NameSpace.GetDefaultFolder 的文档:

To return a specific non-default folder, use the Folders collection.

以及 Folders 的文档上面引用的集合:

Use Folders (index), where index is the name or index number, to return a single Folder object. Folder names are case-sensitive.

你应该能够添加这个:

$subfolder = $inbox.Folders('Account Alert Lockouts')

并更改您的 foreach 以遍历 $subfolder

关于powershell - 如何使用 powershell 定位 outlook 子文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57331558/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com