Otto Moerbeek wrote:
> > No worries, usermod -G sets the secondary group list, like the
> > man pages says and like other systems do.
>
> Oops, my memory and test were both wrong. Indeed, -G does not
> delete membership.
This seems to produce a groups file with all old systemaccounts
removed.
~% cat cleangroups
#!/bin/sh
cat /etc/group |while read line; do
unset newusers
users=${line##*:}
group=${line%:*}
for user in $(echo $users|tr ',' ' '); do
if userinfo -e $user; then
if [ -n "$newusers" ]; then
newusers="$newusers,$user"
else
newusers=$user
fi
fi
done
echo $group:$newusers
done
# Han