首页 > 代码库 > 批量建立用户及密码
批量建立用户及密码
1、批量创建10个系统账号oldboy01-oldboy10并设置密码(密码不能相同)
1 [root@mysql tmp]# cat 15-05-create_user_passwd.sh 2 #!/bin/sh 3 for n in $(seq -w 10) 4 do 5 useradd oldboy-$n 6 #密码就是最后一次 7 echo "$n"|passwd --stdin oldboy-$n 8 done
执行结果:
1 [root@mysql tmp]# sh 15-05-create_user_passwd.sh 2 Changing password for user oldboy-01. 3 passwd: all authentication tokens updated successfully. 4 Changing password for user oldboy-02. 5 passwd: all authentication tokens updated successfully. 6 Changing password for user oldboy-03. 7 passwd: all authentication tokens updated successfully. 8 Changing password for user oldboy-04. 9 passwd: all authentication tokens updated successfully. 10 Changing password for user oldboy-05. 11 passwd: all authentication tokens updated successfully. 12 Changing password for user oldboy-06. 13 passwd: all authentication tokens updated successfully. 14 Changing password for user oldboy-07. 15 passwd: all authentication tokens updated successfully. 16 Changing password for user oldboy-08. 17 passwd: all authentication tokens updated successfully. 18 Changing password for user oldboy-09. 19 passwd: all authentication tokens updated successfully. 20 Changing password for user oldboy-10. 21 passwd: all authentication tokens updated successfully. 22 23 [root@mysql tmp]# su - oldboy-01 24 25 [oldboy-01@mysql ~]$ su - oldboy-10 26 口令:10
2、批量创建10个系统账号oldboy1-oldboy10 并设置密码(密码为随机8位字符串)
先补充点生成随机数的知识
Linux 随机数
[root@mysql tmp]# echo $RANDOM
15598
[root@mysql tmp]# echo $(date +%t%N)
028885282
[root@mysql tmp]# echo $(date +%t%N)$RANDOM
06024296622562
[root@mysql tmp]# echo $(date +%t%N)$RANDOM|md5sum
56a71b3a6ae0880ef4ea2a03c742353e -
取随机数
[root@mysql tmp]# echo $(date +%t%N)$RANDOM|md5sum|cut -c 2-9
e46f36ca
[root@mysql tmp]# echo $(date +%t%N)$RANDOM|md5sum|cut -c 2-9
716d731a
[root@mysql tmp]# echo $(date +%t%N)$RANDOM|md5sum|cut -c 2-9
d4c8a8bf
脚本如下:
1 [root@kuaiwei tmp]# cat adduser.sh 2 #!/bin/sh 3 . /etc/init.d/functions 4 >/tmp/user.txt 5 6 for n in $(seq -w 10) 7 do 8 passwd=`echo $(date +%t%N)$RANDOM|md5sum|cut -c 2-9` 9 useradd oldboy-$n >&/dev/null && user_status=$? 10 echo "$passwd"|passwd --stdin oldboy-$n >&/dev/null && pass_status=$? 11 12 if [ $user_status -eq 0 -a $pass_status -eq 0 ];then 13 action "adduser oldboy-$n" /bin/true 14 echo -e "user:\toldboy-$n pass:\t$passwd" >>/tmp/user.txt 15 else 16 action "adduser oldboy-$n" /bin/false 17 echo -e "user:\toldboy-$n pass:\t$passwd" >>/tmp/fail_user.txt 18 fi 19 20 done
执行结果:
1 [root@kuaiwei tmp]# sh adduser.sh 2 adduser oldboy-01 [ OK ] 3 adduser oldboy-02 [ OK ] 4 adduser oldboy-03 [ OK ] 5 adduser oldboy-04 [ OK ] 6 adduser oldboy-05 [ OK ] 7 adduser oldboy-06 [ OK ] 8 adduser oldboy-07 [ OK ] 9 adduser oldboy-08 [ OK ] 10 adduser oldboy-09 [ OK ] 11 adduser oldboy-10 [ OK ] 12 13 检查创建用户日志,发现创建成功 14 [root@kuaiwei tmp]# cat user.txt 15 user: oldboy-01 pass: dd0b275b 16 user: oldboy-02 pass: 968a2c8f 17 user: oldboy-03 pass: 02b270cb 18 user: oldboy-04 pass: 905deeee 19 user: oldboy-05 pass: 138e6cf1 20 user: oldboy-06 pass: 4be5f9a4 21 user: oldboy-07 pass: e0bb693e 22 user: oldboy-08 pass: 97fa2caa 23 user: oldboy-09 pass: a08bff7d 24 user: oldboy-10 pass: e4f4d39f 25 26 检查创建错误日志,发现为空 27 [root@kuaiwei tmp]# cat fail_user.txt 28 29 重复执行,要先删除原来用户,执行下面命令,可以批量删除 30 [root@kuaiwei tmp]# for n in $(seq -w 10);do userdel -r oldboy-$n;done 31 32 重复执行一次,又会生成不一样的密码。 33 [root@kuaiwei tmp]# sh test.sh 34 adduser oldboy-01 [ OK ] 35 adduser oldboy-02 [ OK ] 36 adduser oldboy-03 [ OK ] 37 adduser oldboy-04 [ OK ] 38 adduser oldboy-05 [ OK ] 39 adduser oldboy-06 [ OK ] 40 adduser oldboy-07 [ OK ] 41 adduser oldboy-08 [ OK ] 42 adduser oldboy-09 [ OK ] 43 adduser oldboy-10 [ OK ] 44 45 检查结果,发现密码变了。 46 [root@kuaiwei tmp]# cat user.txt 47 user: oldboy-01 pass: 7152783a 48 user: oldboy-02 pass: 5f714e8a 49 user: oldboy-03 pass: 68f85e07 50 user: oldboy-04 pass: d21fa12d 51 user: oldboy-05 pass: 35cd16ed 52 user: oldboy-06 pass: 8760591b 53 user: oldboy-07 pass: 497bff6b 54 user: oldboy-08 pass: d8266b5d 55 user: oldboy-09 pass: 27404ce2 56 user: oldboy-10 pass: cc35251a
批量建立用户及密码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。