In “Copy Group Memberships the
Easy Way” (August 2006, InstantDoc ID 50424), I provided a batch-file script—CopyGroup.bat—which
copies Active Directory (AD) group
memberships from one group to
another in Exchange Server 2003 and
Exchange 2000 Server. I've written a
follow-up script—CopyUsersGroups.bat in Listing 1—that you can use to
easily copy group membership from
one user to another. (Note that some
code in the listing wraps to multiple
lines because of space constraints.)
This solution will save you a lot of time
when you need to give a new user the
same group membership as another
existing user in the company. You can
use CopyUsersGroups.bat to copy an
account, including the group memberships when an account is created—a capability that's especially
useful when you need to copy the
group memberships after the account
has been created.
Like CopyGroup.bat, CopyUsersGroups.bat uses the Dsquery, Dsget,
and Dsmod utilities to find and copy
group memberships. Windows Server
2003 includes these three tools. Alternatively, you can install them from the
Windows Server 2003 Administration
Tools Pack (adminpak.msi).
In addition to CopyUsersGroups
.bat, the solution requires an .ini file—
utils.ini in Figure 1—which you need
to customize. In utils.ini, substitute the path to your Dsquery, Dsget, and
Dsmod utilities for sourcedir and the
name of your own domain controller
(DC) for DomainControllerName.
CopyUsersGroups.bat and utils.ini
must be in the same folder (e.g.,
C:\admin). Modify your PATH variable
to include this folder.
To display the command's Help
screen, in a command-shell window, enter the script name without any
parameters. To run the script, enter
the command as follows:
CopyUsersGroups.bat
FromUser ToUser
(Be sure to type the actual command
on one line.) Replace the FromUser
and ToUser parameters with the
appropriate AD sAMAccountName attributes, which are displayed
when you invoke the script without parameters.
—Frank Houbak Kristiansen