Powershell: Mail-Adressen in Exchange Server 2010 finden
1. Alle Mail-Adressen der Domain ‚meinedomain.com‘ anzeigen:
get-recipient | where {$_.emailaddresses -match “meinedomain.com”} | select name,emailaddresses
2. Objekt mit der eMail-Adresse sales@meinedomain.com anzeigen:
get-recipient | where {$_.emailaddresses -match “sales@meinedomain.com”} | select name,emailaddresses
Ausführliche Ausgabe: mit |fl
Übergabe in eine Textdatei mit | Out-File c:\users\test.txt
Dabei ist zu beachten, dass der Pfad beschreibbar sein muss.
Also besser sowas wie C:\Users\myaccountname\Documents\test.txt
Wenn die Ausgabe mit ‚…‘ Zeichen abgekürz wird, kann man da mit „| Out-File C:\Users\myaccountname\Documents\test.txt -width 120“ die Weite anpassen.
Das geht auch nach csv (z.B. für spätere Excel-Importe: | Export-Csv C:\Users\myaccountname\Documents\test.csv -NoTypeInformation -force
Der Parameter „-NoTypeInformation“ entfernt die Header.
Oder HTML: | ConvertTo-Html | Set-Content C:\Users\myaccountname\Documents\test.html
————-
Nachtrag: Sortierte Ausgabe für einen User:
Get-Mailbox „username“ | List Name, DisplayName, PrimarySmtpAddress, @{Name=’EmailAddresses‘;Expression={[string]::join(„`n“, ($_.EmailAddresses))}} | Out-File C:\Users\username\Documents\list.txt
Ergibts etwa sowas:
Name : Max Mustermann
DisplayName : Max Mustermann
PrimarySmtpAddress : m.mustermann@muster.com
EmailAddresses : smtp:mm@muster.net
smtp:maxm@muster.com
SMTP:maxi@mustermann.net