一、知识点
方法1:
- 创建用户 useradd $user
- 10个用户 seq -f '[prefix]%0ng' 10
- [prefix]前缀 0n n 表示前缀后面跟几个0
- 设置密码 echo "密码"|passwd --stdin $user
seq -f 'stu%02g' 10|awk '{print "echo -n -e 用户名:"$0"\t 密 >>/tmp/stupass && useradd "$0" && op=$(date +%s%N | md5sum | cut -c 1-8) && echo $op|passwd --stdin "$0"| echo 码:$op >>/tmp/stupass"}'|bash
结果:
[root@gaogzhen ~]# cat /tmp/stupass
用户名:stu01 密码:39d44135
用户名:stu02 密码:01909f9e
用户名:stu03 密码:303b52c0
用户名:stu04 密码:af0f3215
用户名:stu05 密码:1bec26e9
用户名:stu06 密码:2503fb1e
用户名:stu07 密码:df4c0318
用户名:stu08 密码:540b520e
用户名:stu09 密码:71ab8179
用户名:stu10 密码:f03cebe6
解释:
- echo -n -e -n不要在最后自动换行 -e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般 \t出入tab符
-
date +%s%N %s当前时间毫秒数 %N当前时间纳秒数
-
md5sum | cut -c 1-8取计算MD5值的1-8位
方法2:
for n in `seq -w 01 05`;do useradd user$n;echo "user$n:user$n`echo user$n|md5sum|cut -c1-8`"|chpasswd;done
方法3:
for n in `seq -w 20`;do useradd user$n;echo "user$n`echo user$n|md5sum|cut -c1-8`"|passwd --stdin user$n;done