CentOS从CSV文件脚本创建用户

时间:2018-01-13 16:38:58

标签: linux bash shell csv centos

我想在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

如何从每列创建用户?

1 个答案:

答案 0 :(得分:1)

试试这个:

$ 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: