Ошибка фильтрации почтовых ящиков PowerShell? - PullRequest
0 голосов
/ 13 мая 2019

Проверка того, что какой-либо почтовый ящик уже используется в качестве 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 () и кучу других вещей, но я не могу заставить его работать с переменной, не уверен, в чем проблемаздесь ... обе переменные являются строками.

1 Ответ

0 голосов
/ 13 мая 2019

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`""

Надеюсь, что поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...