如何过滤只有SMTP地址? 我只想报告域名为@mydomain.com
用户。 所有其他域名将被排除。 我试图运行一个报告,将排除某些基于用户的域的SIP / SMTP地址。
$CheckUser = Get-CsUser -Filter {SipAddress -eq $SIP} $s = 0 While ($CheckUser -eq $null) { $CheckUser = Get-CsUser -Filter {SipAddress -eq $SIP} $s++ If ($s -eq 2000) { $Date = Get-Date –f "MM/dd/yyyy HH:mm:ss" "[$Date] User $EUID did not complete OCS configuration" $ProcessedDateandTime = Get-Date $ProcessedDate = $ProcessedDateandTime.ToShortDateString() $ProcessedTime = $ProcessedDateandTime.ToShortTimeString() $ErrorCode = "12" Add-Content $ProcessedFileName "$ProcessedDate,$ProcessedTime,$EUID,Mailbox Created but OCS Timed Out.,$ErrorCode" Add-Content $ErrorLog "$ProcessedDate,$ProcessedTime,$EUID,Mailbox Created but OCS Timed Out." $FailureCount++ Break } }
我从你的问题中了解到,你想列出所有的邮箱地址都以@ mydomain.com结尾的smtp地址? 就像一个报告,所有现有的@ mydomain.com电子邮件地址?
GET-MAILBOX * | where { $_.PrimarySMTPAddress.Domain -eq 'mydomain.com' }
资料来源: http : //www.energizedtech.com/2010/01/powershell-exchange-2007-list.html
希望有所帮助
我不太确定在上面的脚本中你会发布这个,但是你可以使用[string].EndsWith
操作符。 例如:
dir|?{$_.name.EndsWith("f")}
将显示当前目录中以字母f
结尾的每个项目。 所以你可以调整它来:
|?{$_.emailaddress.EndsWith("example.org")}
在你做Get-
查询之后
?
是Where-Object
(PSpipe道的标准过滤对象)的缩写。