Shell 脚本帮助 - 自动将用户分配到组

Shell 脚本帮助 - 自动将用户分配到组

最近,我刚刚开始学习linux,目前正在尝试制作一个shell脚本,它可以自动执行创建用户帐户、为其分配密码然后将其分配给组的任务。

到目前为止,我已经能够使用文件描述符创建用户帐户并为他们创建随机密码,但不知道如何自动将它们分配给一个组。

如果重要的话我会使用 Raspberry Pi。

到目前为止我的代码是:

exec 3< users.txt
exec 4< passwords.txt

while read iuser <&3 && read ipasswd <&4 ; do
    adduser $iuser
    echo $ipasswd | passwd --stdin $iuser
done

答案1

根据评论 - 您可能想阅读adduser.

尤其 :

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]] 用户也是其成员的补充组的列表。每个组与下一个组之间用逗号分隔,中间没有空格。这些组受到与 -g 选项指定的组相同的限制。默认情况下,用户仅属于初始组。

所以在你的脚本中你可以:

DEFAULT_GROUP=users
exec 3< users.txt
exec 4< passwords.txt

while read iuser <&3 && read ipasswd <&4 ; do
    adduser -G $DEFAULT_GROUP $iuser
    echo $ipasswd | passwd --stdin $iuser
done

相关内容