批量创建用户并设置随机密码

假如,在linux系统服务器上,要一次创建多个用户并设置密码,你有什么好办法吗?跟我来吧🔅

批量创建用户

使用shell脚本实现批量创建用户,实现方式如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$ cat batch_create_user.sh


# [email protected]
USER_LIST=$@
# 将生成的用户名和密码存在文件里面,这样写默认user.txt存在当前路径下
USER_FILE=user.txt
for USER in $USER_LIST; do
# 通过id来判断用户是否存在
if ! id $USER &>/dev/null; then
# 生产随机的8位字符串
PASS=$(echo $RANDOM |md5sum |cut -c 1-8)
# 创建用户
useradd $USER
# 将随机生成的密码分配给用户
echo $PASS |passwd --stdin $USER &>/dev/null
# 生成的用户名和密码存入文件中
echo "$USER $PASS" >> $USER_FILE
echo "$USER User create successful."
else
echo "$USER User already exists!"
fi
done

执行结果如下:

1
2
3
4
5
6
7
$ ./batch_create_user.sh coco zhangsan
coco User create successful.
zhangsan User create successful.
# 文件默认存放在当前目录下
$ cat user.txt
coco 69b7bc14
zhangsan fd343a4f