shell 脚本在日常运维中非常重要,可以帮助我们执行重复性操作。以下是运维过程中批量创建用户并且设置复杂密码的案例。可以参考。
#!/bin/bash
# 批量创建user1至user10,要求设置随机16位密码
# 包含数字、大小写字母、符号。并要求用户使用密码首次登录后,强制设置新密码
> /root/user.log
for i in {1..10};do
#创建十个用户. 说明:用户名为user+数字。可以改为需要的用户名前缀。以下是以bigdata0作为前缀。
useradd bigdata0$i && echo bigdata0$i is create sucessfully !
#随机生成密码.16位。有数字,字母符号等特殊字符。
password=$(cat /dev/urandom |tr -dc '0-9a-zA-Z!@_#?.,' |head -c 16)
#将用户和密码导出。生成的密码文件导出到本地文件中
echo bigdata0$i $password >> /root/users.log
#设置密码
echo $password |passwd --stdin bigdata0$i &> /dev/null
#强制下次登录修改密码
passwd -e bigdata0$i &> /dev/null
done