【问题标题】:PowerShell mailbox filtering bug?PowerShell 邮箱过滤错误?
【发布时间】:2019-05-13 15:19:12
【问题描述】:

检查某个地址是否已被任何邮箱用作 SMTP 或 SIP 地址。

如果不添加前缀,以下命令不会自动搜索 SIP 地址:

  • $SMTP = "bruce@###.com"
  • $SIP = "sip:bruce@###.com"

    Get-Mailbox -Filter 'emailaddresses -eq $SMTP -or emailaddresses -eq "sip:bruce@###.com"'
    

上面的有效,下面的无效:

   Get-Mailbox -Filter 'emailaddresses -eq $SMTP -or emailaddresses -eq $SIP'

尝试了 ToString() 和其他一堆东西,但我无法让它与变量一起使用,不确定问题出在哪里......两个变量都是字符串。

【问题讨论】:

    标签: powershell exchange-server


    【解决方案1】:

    doc.mircosoft:

    当您将字符串括在单引号中(单引号字符串)时,该字符串将完全按照您键入的方式传递给命令。不执行替换。

    所以过滤器:

    Get-Mailbox -Filter 'emailaddresses -eq $SMTP -or emailaddresses -eq $SIP'
    

    将按原样使用 ('emailaddresses -eq $SMTP -or emailaddresses -eq $SIP') 不会进行任何变量替换。

    改成:

     Get-Mailbox -Filter "emailaddresses -eq $SMTP -or emailaddresses -eq $SIP"
    

     Get-Mailbox -Filter "emailaddresses -eq $SMTP -or emailaddresses -eq `"sip:bruce@###.com`""
    

    希望有帮助

    【讨论】:

    • Get-Mailbox -Filter "emailaddresses -eq '$SMTP' -or emailaddresses -eq '$SIP'"
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-26
    • 1970-01-01
    • 1970-01-01
    • 2015-06-11
    • 1970-01-01
    • 2010-09-29
    • 2019-01-09
    相关资源
    最近更新 更多