Replace Exchange Contact Domain with New Domain For All Contacts

This topic contains 2 replies, has 2 voices, and was last updated by Profile photo of Nick Cook Nick Cook 3 weeks, 4 days ago.

  • Author
  • #74144
    Profile photo of Nick Cook
    Nick Cook

    I am looking for some assistance with a powershell script that will search an OU that contains my Exchange Contacts based off of "" value and then replaces only the "" with "" When looking in the exchange properties of the contact the value is "External email address" Any assistance on this is greatly appreciated.
    Thank You,

  • #74170


    One way to query contacts from AD is

    Get-ADObject -LDAPFilter "ObjectClass=Contact"

    Link for more:

    Here you can use -SearchBase if you know the AD OU and pipe it to Where-Object and look only those "external email address" users. Then pipe it to Set-ADObject and -replace the domain. I think you might need to do a little bit splitting here also on the mailaddress.



  • #74182
    Profile photo of Nick Cook
    Nick Cook

    Thanks for the reply,

    I was able to get this working with the following exchange powershell:

    $users = Get-MailContact -OrganizationalUnit "Domain/User Accounts/test" |
    where ExternalEmailAddress -like "**"

    foreach($user in $users){
    Set-MailContact $ -ExternalEmailAddress `
    ($user.ExternalEmailAddress -replace "","") -Verbose

You must be logged in to reply to this topic.