it makes me crazy to drag-and-drop in the *slow* ZCS admin console, and i suggest you can try to write a script like this :
1. get all account for specific COS or if you don't have specfic COS for users, then get all account list from ZCS
2. get all member of that distribution list, e.g. you have
all@example.com for all employee in company?
3. compare and extract the difference
4. add/remove such difference to
all@example.com Code:
# get all accounts and
# assume you want to remove several system accounts first
# and don't forget to SORT it first
zmprov gaa | sed /admin/d | sed /wiki/d | sed /spam./d | sed /ham./d | sort > account.txt
# if you are search all users who belongs to specific COS,
# then uncomment these lines.
# and cos_id can be found by zmprov gc <cos_name> | grep "zimbraId:"
# zmprov sa zimbraCOSId=<cos_id> > account.txt
# get all members of your distribution list, e.g. all@example.com
# again, SORT it first
zmprov gdl all@example.com | grep "zimbraMailForwardingAddress" | cut -d' ' -f2 | sort > member.txt
# compare and get the difference
comm -2 -3 account.txt member.txt > add.txt
comm -1 -3 account.txt member.txt > del.txt
# add new member
cat add.txt |
while read line; do
echo "add new member : $line"
zmprov adlm all@example.com $line
done
# and this is to remove
cat del.txt |
while read line; do
echo "remove member : $line"
zmprov rdlm all@example.com $line
done
Remember to modify it to meet your environment.