【问题标题】:search-mailbox powershell script not working as expected搜索邮箱 powershell 脚本未按预期工作
【发布时间】:2020-12-05 11:51:47
【问题描述】:

如果我使用带有交换模块的直接 powershell,一切都按预期工作:

echo $mbxs | Search-Mailbox -SearchQuery 'received:01/07/2020..01/08/2020 AND from:test@some.com' -DeleteContent -Force

但是如果我使用 ps1 脚本,我会得到 KQL 异常:

$date01=(get-date).AddDays(-14).ToString("dd\/MM\/yyyy")
$date02=(get-date).AddDays(-28).ToString("dd\/MM\/yyyy")
$mails = "test@some.com","test1@some.com"
$mbxs = import-csv C:\script\names.csv
foreach ($mail in $mails) 
{
    echo $mbxs | Search-Mailbox -SearchQuery 'received:$date02..$date01 AND from:$mail' -DeleteContent -Force
    echo $mbxs | Search-Mailbox -SearchQuery 'sent:$date02..$date01 AND to:$mail' -DeleteContent -Force
}
Remove-Variable mbxs,mails,date01,date02

The KQL parser threw an exception.

相同的脚本在 2003 服务器上的 ps 1.0 上工作,但在 2012 R2 上不工作......我做错了什么?

【问题讨论】:

    标签: powershell exchange-server


    【解决方案1】:

    我发现了几个问题:

    1. 字符串中的变量需要用双引号来展开:
    2. 如果您从 CSV 导入,则必须引用该属性。
    3. 您不需要在管道中回显 $mbxs。你应该可以说出来。

    它应该看起来像这样:

    $date01=(get-date).AddDays(-14).ToString("dd\/MM\/yyyy")
    $date02=(get-date).AddDays(-28).ToString("dd\/MM\/yyyy")
    $mails = "test@some.com","test1@some.com"
    $mbxs = import-csv C:\script\names.csv
    foreach ($mail in $mails) 
    {
        $mbxs | Search-Mailbox -SearchQuery "Received:$date02..$date01 AND From:$mail" -DeleteContent -Force
        $mbxs | Search-Mailbox -SearchQuery "Sent:$date02..$date01 AND To:$mail" -DeleteContent -Force
    }
    Remove-Variable mbxs,mails,date01,date02
    

    不过,我也有点担心,因为如果您从 CSV 导入,通常必须引用一个属性。如果您想发布具有代表性的 CSV 数据样本,我们可以对此进行更正。

    【讨论】:

    • $mbxs | Search-Mailbox -SearchQuery "收到:$date02..$date01 AND From:$mail" -DeleteContent -Force $mbxs | Search-Mailbox -SearchQuery "Sent:$date02..$date01 AND To:$mail" -DeleteContent -Force
    • 我试过这样使用,但得到同样的错误,我的 CSV 包含 Identity 属性。
    • 对不起,使用了错误的脚本,现在一切正常,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-12
    • 2018-10-17
    • 1970-01-01
    • 2016-09-07
    • 1970-01-01
    • 2020-08-10
    相关资源
    最近更新 更多