Как через Search-Mailbox отфильтровать исключительно внешнюю почту?
Search-Mailbox -Identity $SearchMailbox -SearchQuery 'Received:28.07.2016 AND From:"@mydomain.com" AND To:"@mydomain.com"' -TargetMailbox $TargetMailbox -TargetFolder "SearchQueryTest9" -LogLevel Full
Так работает, но если среди получателей есть внешние адреса такие письма не откидываются. Надо через "AND NOT" как-то исключить письма где среди получателей есть внешние адреса и показывать только внутренний-внутренний. При условии что все внешние домены перечислить невозможно. Как?
А какой результат вы хотите получить этим сёрчем? Не хочется гадать, но раз описания не много, то попробую пальцем в небо: может просто включить журналирование?
Виталий: Задача конечно странная, т.е. если почта отправлена и внутри и наружу, считаться не должна как я понимаю, вероятно в лоб реализовать невозможно, предоложим ваш домен "@test.ru", допустим получатели "user1@test.ru, user2@external.com" - и попробуйте описать правило одной командой даже на регулярках (вероятно кто-то сможет конечно сходу выдать решение), но я вижу схему так (т.е. это будет скрипт, а не 1 команда на PS):
$x = get-transportservice | get-messagetrackinglog -start 07/28/2016 -eventid DELIVER | ? {$_.Sender -match "@test.ru}
Теперь из этого $x выбираете кол-во получателей, и в цикле сравниваете совпадает ли домен с вашим, если хоть 1 не совпадает - отбрасываете такой запрос, если же всё нормально - запоминаете в новый массив получателя, отправителя, дату и тему, допустим в $y.
И уже после этого полученный $y | % {search-mailbox $_ -SearchQuery "Received:$_.Timestamp AND from:$_.Sender ....}
Ну вот как то так я это вижу.