Heute wollte ich über die Exchange-Management-Shell alle einem bestimmten Postfach zugewiesenen eMail-Adressen auslesen und in eine txt-Datei importieren.
Der Befehl dazu lautet:Get-Mailbox "Mailbox Name" | fl name, emailaddresses > C:\Export\test.txt
So weit, so gut. Allerdings waren diesem Postfach mehrere Dutzend eMail-Adressen zugewiesen. Dies führte dazu, dass die Ausgabe der eMail-Adressen nach einer bestimmten Länge abgeschnitten und mit "..." beendet wurde.
Verschiedene Versuche dies über Änderung des Ausgabeformats zu beheben zeigten keinen Erfolg.
Nach etwas Recherche im Internet habe ich auf einer englischen Seite den entsprechenden Hinweis gefunden. Dieses Verhalten wird durch eine Variable "$FormatEnumerationLimit" kontrolliert, welche per Default auf den Wert 16 gesetzt ist. Dies bedeutete im konkreten Fall dass die Ausgabe nach 16 eMail-Adressen abgeschnitten wurde.
Man kann dieses Limit für die aktuelle Shell-Sitzung auf unbegrenzte Anzahl anheben in dem man folgenden Befehl an der Shell-Eingabeaufforderung eingibt:$FormatEnumerationLimit = -1
Danach den gewünschten Befehl noch einmal eingeben und die Ausgabe wird nicht mehr abgeschnitten.
Das Limit wird in der Datei C:\Program Files\Microsoft\Exchange Server\V14\Bin\Exchange.ps1 (Default-Pfad für Exchange 2010) festgelegt. Es ist aber wohl nicht ratsam es dort direkt abzuändern, insofern habe ich es bei der Änderung für die aktuelle Session belassen.
Kommentare
Gute Sache :)
Gute Sache :)
Danke für den hilfreichen Tipp!
geht nicht
Nee. Die Ausgabe in der csv-datei wird noch imme rabgeschnitten.
Neuen Kommentar schreiben