Při nedávné migraci jsem potřeboval změnit všem uživatelům v AD jejich domovskou složku - konkrétně tedy změnit jméno serveru, na které se domovské složky nacházeli.
Zde je zdrojový kód scriptu, který jsem na to použil:
Dim strComputer Dim objWMI Dim colUsers Dim objUser Dim homedirectory Dim oldserver Dim newserver ' Active Directory Computer strComputer = "DC.example.local" ' Old home server oldserver= "oldserver.example.local" ' New home server newserver= "newserver.example.local" ' Select all user account ' ---------------------------------------------------------------- Set objWMI = GetObject("winmgmts:\\" & strComputer & "\root\directory\LDAP") Set colUsers = objWMI.ExecQuery("SELECT * FROM ds_user") For Each objUser in colUsers homedirectory=objUser.ds_homedirectory if instr(homedirectory,oldserver)>0 then homedirectory=replace(homedirectory, oldserver, newserver) changedir objUser.DS_distinguishedname, homedirectory end if Next set colUsers=nothing set objWMI=nothing ' FUNCTIONS ' ---------------------------------------------------------------- ' Set Home directory pro AD user ' ---------------------------------------------------------------- sub changedir(dn, dir) Set objUser = GetObject("LDAP://" & dn) objUser.Put "homeDirectory", dir objUser.SetInfo set objuser=nothing end sub
Ke stažení je k dispozici zde.
Chcete-li ke komentáři přidat svou fotku nebo jinou ikonku, postupujte podle návodu.