3. 批量添加多个用户

向右看齐 2022-03-28 07:42 345阅读 0赞

批量创建多个用户的需求在生产环境下用的不多,但是经常会在面试时的笔试题上看到,本案例就是批量创建多个用户。具体要求如下:

  1. 1)批量创建100个用户;
  2. 2)用户名为user_01 - user_100
  3. 3)给所有用户都设定一个随机密码,12位长度,且需要包含大小写字母及数字;
  4. 4)并把用户的密码保存到 /data/user_passwd 文件中;
  5. 5)这100个用户同属于users组。

参考脚本如下:

  1. #!/bin/bash
  2. #批量添加100个用户,user_01 - user_100
  3. #检查是否有mkpasswd命令,没有则安装
  4. if ! which mkpasswd $>/dev/null
  5. then
  6. echo "没有mkpasswd命令,安装该命令:"
  7. yum install -y expect
  8. fi
  9. #判断 /data/user_passwd 文件是否存在
  10. #若存在,应该先删除
  11. [ -f /data/user_passwd ] && rm -rf /data/user_passwd
  12. #100为三位数,只能遍历到99
  13. for n in `seq -w 1 99`
  14. do
  15. pass=`mkpasswd -l 12 -s 0`
  16. echo "添加用户user_100"
  17. useradd -g users user_$n
  18. echo "给用户user_$n设定密码"
  19. echo $pass | passwd --stdin user_$n
  20. echo "user_$n $pass" >> /data/user_passwd
  21. done
  22. pass=`mkpasswd -l 12 -s 0`
  23. echo "添加用户user_100"
  24. useradd -g users user_100
  25. echo "给用户user_100设定密码"
  26. echo $pass | passwd --stdin user_100
  27. echo "user_100 $pass" >> /data/user_passwd

脚本中,

1)mkpasswd -s 指定特殊字符个数

2)如果遍历到100,那就是user_001 - user_100

3)passwd —stdin 从标准输入读取令牌,从而更改密码(只有root用户才能进行此操作)


发表评论

表情:
评论列表 (有 0 条评论,345人围观)

还没有评论,来说两句吧...

相关阅读

    相关 3. 批量添加用户

    批量创建多个用户的需求在生产环境下用的不多,但是经常会在面试时的笔试题上看到,本案例就是批量创建多个用户。具体要求如下: 1)批量创建100个用户;