练习shell脚本题目:写一个脚本,实现批量添加20个用户,用户名为user1-20,密码为user后面跟5个随机字符;
之前练习过批量创建用户,使用for循环就可以实现,这次多了一个需求,设置用户密码,密码为user后面跟5个随机字符。思路为:创建用户当然还是使用for循环,随机字符需要研究一下怎么生成,怎么在脚本里面设置密码?
下面是经过我测试多次,实现题目需求的脚本,大家有更好的可以贴出来,共同学习。
[root@localhost~]#catuser.sh#!/bin/bash#writenbymofansheng@-08-04foriin`seq120`dopw=`echo$[$RANDOM]|md5sum|cut-c1-5`useradduser$iecho"user$i$pw">>/root/pw.txtecho"user$pw"|passwd--stdinuser$idone
提醒注意:生成随机密码后直接给用户设定了,但是我并不知道随机密码是什么啊。所以加了一个随机密码定向到一个文件中,方便管理。格式为:用户名 后面跟随机字符;举例如下:
[root@localhost~]#catpw.txtuser13e9dbuser2febb6user343c55
其他生成随机字符的方法:
1:生成的随机字符为字母加数字组合
[root@localhost~]#cat/dev/urandom|head-1|md5sum|head-c5cf93d[root@localhost~]#cat/dev/urandom|head-1|md5sum|head-c575217
2:生成的随机字符包含特殊字母
[root@localhost~]#cat/dev/urandom|strings-n5|head-n1O4%"G[root@localhost~]#cat/dev/urandom|strings-n5|head-n1mMSxu