我正在尝试从文本文件添加用户,但不仅仅是添加用户,我还需要将他们添加到组中,指定他们的主目录,然后生成一个随机密码发送给系统管理员。
我发现了许多从要读取的文本文件添加用户的示例,但它没有我试图包含的所有方面。
我尝试使用awk来阅读具有以下格式的文件
Firstname1 Group1 /home/Username1 Firstname1 Lastname1
Firstname2 Group1 /home/Username2 Firstname2 Lastname2
Firstname3 Group2 /home/Username3 Firstname3 Lastname3
名字成为用户名,每个字段分别由两个双空格分隔。
我迷失了必须添加的所有参数,以便获取每个字段并将一个从文件中读取的变量附加到其中,然后生成随之而来的随机密码!
#!/bin/bash
file=newusers.txt
username = awk -F" " '{print $1}' newusers.txt
gid = awk -F" " '{print $2}' newusers.txt
home-dir = awk -F" " '{print $3}' newusers.txt
adduser -d $username $gid $home-dir
此时,仅从我尝试读取的文件中添加用户一事无成。
你的脚本应该是:
#!/bin/bash
username=$(awk '{print $1}' newusers.txt)
gid=$(awk '{print $2}' newusers.txt)
homedir=$(awk '{print $3}' newusers.txt)
adduser -d "$username" "$gid" "$homedir"
假设新用户.txt的内容是:
user group home