Solved

Bulk rename 450 AD Groups with Powershell

Posted on 2010-11-18
10
4,118 Views
Last Modified: 2012-05-10
Hi,

normally I try to script for myself and see how far I get - and ask my questions when necessary. Right know I could need a little help from scratch ;-)

What I want to do:
I have a OU with nearly 1000 Groups and need to rename about 450 of them. The current naming is something like AAA-BBB-CC-XXXXX. The new groups should be named AAA-BBB_PC-XXXXX.

Is there a chance to to the renaming with powershell?

Regards
Steffen
0
Comment
Question by:SSR-IS
  • 5
  • 4
10 Comments
 
LVL 10

Expert Comment

by:abhijitmdp
ID: 34163344
0
 
LVL 27

Expert Comment

by:KenMcF
ID: 34163400
Not sure what version of OS you are running. If have 2008R you could use the MS AD cmdlets if not you can use the quest cmdlets.

You could try something like this if the group names you specified are the same.

Test first in dev or seperate OU.

$groups = get-qadgroup -searchroot "OU=Groups,DC=Domain,DC=Local" | Where {$_.name -match "AAA-BBB-CC"}
foreach ($group in $groups){
$name = $group.name -replace "-CC-", "_PC-"
rename-qadobject $group -NewName $name
}
0
 

Author Comment

by:SSR-IS
ID: 34164842
Okay thanks - I´ll try this over the weekend!
0
 

Author Comment

by:SSR-IS
ID: 34183063
Hello KenMcF,

your script work absolutely perfect!
Theres one thing which should be done if possiible. The Pre-Windows2000 name is not changed with this scipt. I think it doesn´t really matter, but it would be better to do this even also.

Maybe you can extend your script, if you don´t mind?

Regards
Steffen
0
 
LVL 27

Expert Comment

by:KenMcF
ID: 34183105
try this

$groups = get-qadgroup -searchroot "OU=Groups,DC=Domain,DC=Local" | Where {$_.name -match "AAA-BBB-CC"}
foreach ($group in $groups){
$name = $group.name -replace "-CC-", "_PC-"
rename-qadobject $group -NewName $name | set-qadgroup -samaccountname $name
}
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Author Comment

by:SSR-IS
ID: 34183190
Thanks for you very quick reply.
There´s an error now, where Powershell states that the pipe element is not allowed to be empt.
0
 
LVL 27

Expert Comment

by:KenMcF
ID: 34183200
Have all the groups been renamed already and just the samaccountname needs changed now?
0
 

Author Comment

by:SSR-IS
ID: 34183208
Oh, I set the naming back to the starting position - which means all groups have the naming AAA-BBB-CC-XXXXX again.
0
 
LVL 27

Accepted Solution

by:
KenMcF earned 500 total points
ID: 34183244
I just tested this in my lab and it worked. If it errors can you post a screen shot of the error?

$groups = get-qadgroup -searchroot "OU=Groups,DC=Domain,DC=Local" | Where {$_.name -match "AAA-BBB-CC"}
foreach ($group in $groups){
$name = $group.name -replace "-CC-", "_PC-"
rename-qadobject $group.name -NewName $name | set-qadgroup -samaccountname $name
}
0
 

Author Closing Comment

by:SSR-IS
ID: 34183259
I don´t know why, maybe I had a typing error, I copied your script again and now it works.

Thanks a lot, espacially for support on sunday! 500 pts to you!

Steffen
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

"Migrate" an SMTP relay receive connector to a new server using info from an old server.
A procedure for exporting installed hotfix details of remote computers using powershell
This tutorial will walk an individual through the steps necessary to join and promote the first Windows Server 2012 domain controller into an Active Directory environment running on Windows Server 2008. Determine the location of the FSMO roles by lo…
This tutorial will walk an individual through the process of transferring the five major, necessary Active Directory Roles, commonly referred to as the FSMO roles from a Windows Server 2008 domain controller to a Windows Server 2012 domain controlle…

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now