1

我有以下 powershell 脚本:

    Get-Mailbox -ResultSize Unlimited | Select-Object PrimarySmtpAddress | Export-Csv c:\userlist.csv -NoTypeInformation
Send-MailMessage -from noreply@domain.com -to username@domain.com -subject "Email Addresses" -Attachment "c:\userlist.csv" -SmtpServer relay-server 

这给了我所有的电子邮件地址作为交换。我有一堆电子邮件地址,地址中有这样的数字:

123@domain.com

如何处理数据,以便仅导出包含字母的电子邮件地址?我不希望将任何包含数字的电子邮件地址导出到 userlist.csv 文件。

4

2 回答 2

4

将 Where-Object cmdlet 与 -NotMatch 一起使用

Get-Mailbox -ResultSize Unlimited | Where-Object { $_.PrimarySmtpAddress -NotMatch "\d" } | Select-Object PrimarySmtpAddress | Export-Csv c:\userlist.csv -NoTypeInformation
Send-MailMessage -from noreply@domain.com -to username@domain.com -subject "Email Addresses" -Attachment "c:\userlist.csv" -SmtpServer relay-server 
于 2012-09-19T01:16:46.077 回答
1

附带说明一下,代码只为您提供主要地址,如果用户有多个地址,您将无法获得它们。您可以使用 EmailAddressess 属性来获取所有地址(不仅仅是 smtp)。

于 2012-09-19T07:03:43.807 回答