附加groupID newusers

我的文件结构错误,我使用while..read循环将其转换为正确的结构

userid1:john doe smith:group1
userid2:jane doe smith:group2
userid3:paul rudd :group2

到目前为止的代码:

while IFS=: read userid username; do 
        userid=`echo $username|cut -d ":" -f 1`
             echo "$userid:password:$username:/home/$userid/bin/bash";
        done <  users.txt > newusers.txt

这给了我这个输出,

userid1:password123:John Doe Smith:/home/userid1/bin/bash
userid2:password123:Jane Doe Smith:/home/userid2/bin/bash
userid3:password123:Paul Rudd:/home/userid3/bin/bash

现在,我需要附加uid(自动生成,因此为空白)和gid,不确定如何执行此操作,我已经有使用2020和2040创建的组。

所需的输出:

userid1:password123::2020:John Doe Smith:/home/userid1/bin/bash
userid2:password123::2040:Jane Doe Smith:/home/userid2/bin/bash
userid3:password123::2040:Paul Rudd:/home/userid3/bin/bash

干杯。