Bulk copy SAMAccountName to Alias using PowerShell
2013-01-10 4 Comments
Just a short one to show how to copy the SAMAccountName to Alias using PowerShell. You can easily change the initial population of $Mailboxes and test the script on a single, or smaller number of users.
You also need to remove the Write-Host commands and -ErrorAction Inquire –Whatif in the Set-Mailbox command after your testing.
During testing:
$Mailboxes = Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox foreach ($Mailbox in $Mailboxes) { $SAMAccountName = $Mailbox.SAMAccountName $OldAlias = $Mailbox.Alias if ($SAMAccountName -ne $OldAlias) { Write-Host $Mailbox.SAMAccountName Write-Host $Mailbox.Alias Set-Mailbox $Mailbox -Alias “$SAMAccountName” -Confirm:$false -ErrorAction Inquire -Whatif Write-Host } }
After testing:
$Mailboxes = Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox foreach ($Mailbox in $Mailboxes) { $SAMAccountName = $Mailbox.SAMAccountName $OldAlias = $Mailbox.Alias if ($SAMAccountName -ne $OldAlias) { Set-Mailbox $Mailbox -Alias “$SAMAccountName” -Confirm:$false } }
Verifying the changes:
Listing all mailboxes where SAMAccountName and Alias differs…
Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox | Where {$_.SAMAccountName -ne $_.Alias}
Let me know if you have any questions, thanks for reading!