When migrating filservers and you are using the “Home Folder” setting of an AD user’s object like here:
From:

To:

It would be great just to edit all objects in bulk, with this script, it is possible:
Import-Module ActiveDirectory
$oldServerName = "oldserver"
$newServerName = "newserver"
$AllUsers = Get-ADUser -LDAPFilter '(name=*)' -SearchBase "DC=domain,DC=local" -Properties HomeDirectory
foreach($user in $AllUsers){
if(($user.HomeDirectory.ToString()).contains($oldServerName)){
$homeDirectory = ($user.HomeDirectory.ToString()) -replace $oldServerName, $newServerName
Set-ADUser $user.DistinguishedName -HomeDirectory $homeDirectory
}
}
Remember servername is CASE SENSITIVE! So if the oldserver is all with small letters, and you type them with CAPS, it will change nothing 🙂
Credits go to:
https://www.experts-exchange.com/members/justinyeung.html

