Exchange Server 2016 Migration

Exchange Public Folder fix Whitespace

Leerzeichen aus Exchange Objekten entfernen

Mit diesen Powershell-Skripten entfernen wir z.B. vor einer Public Folder Migration die verbliebenden Leerzeichen aus alten Zeiten. Wer damals von Exchange 2003 zu 2010 migriert hatte, dem wurde nahe gelegt, einige Best Practise Methoden anzuwenden. Wer das nicht getan hat bekommt heute die Quittung. Nicht unterstützte Zeichen müssen unbedingt vor dem Start der Migration entfernt werden.

Powershell anzeigen

# Exchange Shell 2010 laden
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010

# Exchange Shell 2013 & 2016 laden
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn

# Leerzeichen aus einem AD Objekt namens NDS entfernen
Get-Mailbox -Identity NDS | Foreach { Set-Mailbox -Identity $_.Identity -DisplayName $_.DisplayName.Trim() }

# Leerzeichen aus allen AD Objekten entfernen
Get-Mailbox | Foreach { Set-Mailbox -Identity $_.Identity -DisplayName $_.DisplayName.Trim() }

# Leerzeichen aus einer Verteilergruppe entfernen
Get-DistributionGroup-Identität GroupName | Set-DistributionGroup-Identität $_. Identität-“DisplayName” $_. DisplayName.Trim()

# Leerzeichen aus allen Verteilergruppen entfernen
Get-DistributionGroup | Foreach {Set-DistributionGroup-Identität $_. Identität-“DisplayName” $_. DisplayName.Trim()}

# Leerzeichen aus einem Öffentlichen Ordner entfernen
Get-PublicFolder -Identity “\NDS\Kunden\PublicFolderName” | Set-PublicFolder -Identity $_.Identity -Name $_.Name.Trim()

# Leerzeichen aus allen Öffentlichen Ordnern entfernen
Get-PublicFolder -Identity “\” -Recurse -ResultSize Unlimited | Foreach { Set-PublicFolder -Identity $_.Identity -Name $_.Name.Trim() }

# Leerzeichen aus einem ALIAS entfernen
Get-PublicFolder -Identity “\Test\SubPath\PublicFolderName” | Get-MailPublicFolder | Where {$_.Alias -like “* *”} | ForEach-Object { Set-MailPublicFolder $_.identity -Alias:($_.Alias -Replace ” “,””) }

# Leerzeichen aus allen ALIAS(EN) entfernen
Get-PublicFolder -Identity “\” -Recurse -ResultSize Unlimited | Get-MailPublicFolder | Where {$_.Alias -like “* *”} | ForEach-Object { Set-MailPublicFolder $_.identity -Alias:($_.Alias -Replace ” “,””) }

# Export in CSV
Get-MailPublicFolder | Where-Object {$_.Alias -like “* *”} | Select-Object Alias, Identity | Export-CSV C:\Temp\PF.csv

# Den Alias eines Ordners ändern
Get-MailPublicFolder KundeEdeka | Set-MailPublicFolder -Alias KundeEdeka