OK, aqui está a solução com a qual estou trabalhando até agora, usando awk
em um script de shell:
# Extract group number for group from /etc/group
GROUP=$(grep "^${GROUPNAME}:" /etc/group | awk -F: '{print $3}')
# Create passwd entry for user and substitute extracted group number
# before adding to /etc/passwd
mkpasswd -d "${DOMAIN}" -u "${USER}" | awk -F: '{print $1":"$2":"$3":'${GROUP}':"$5":"$6":"$7}' >> /etc/passwd
(sugestões de melhorias bem-vindas - não sou um awk
guru)
Ainda seria bom descobrir (se) existir uma maneira "correta" de fazê-lo.