我想在CentOs 7中编写一个脚本,为每个CSV文件行创建一个新用户。
我的csv文件如下:

username;firstname;lastname;password
username2;firstname2;lastname2;
...
...

第一列是用户名,第二列是名字,第三列是姓氏,最后一列代表密码。如果没有密码,它将创建具有某些默认值的用户。
我的代码:
#!/bin/bash

export IFS=";"

cat users.csv | while read username name surname password; do
    useradd "$username" -c "${name} ${surname}" -p "$password"
done

如何从每个列创建用户?

最佳答案

试试这个:

$ su - newuser
No passwd entry for user 'newuser'

$ IFS=";" && echo "newuser;New;User;testpass" | while read username name surname password; do sudo useradd "$username" -c "${name} ${surname}" -p `openssl passwd -1 $password` -m; done

$ su - newuser
Password:
newuser@my-desktop:~$ logout

$ cat /etc/passwd | grep newuser
newuser:x:1002:1002:New User:/home/newuser:

关于linux - CentOS从CSV文件脚本创建用户,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48241956/

10-11 10:27