jarson20121人评论3021人阅读2010-04-01 15:35:04
如果要批量创建用户,可以使用下面脚本来实现:
1:首先创建一个存放用户密码的文件/user.txt,格式是每一行 用户名:密码
jack:241234
john:209876
cathering:23545
...
2:编写脚本如下:
#!/bin/bash #Auth:jarson #Date:2010-3-18 [ $USER != 'root' ]&&exit 1 for i in `cat /user.txt` do USER=`echo $i|cut -f1 -d:` PASS=`echo $i|cut -f2 -d:` if id $USER &>/dev/null then echo "The user $USER is exist!" else useradd $USER echo $PASS|passwd --stdin $USER echo "username is $USER, and password is $PASS" fi done
3:用bash adduser.sh执行即可。
也可以改良此脚本,比如密码是随机产生,而非使用此文本文件里面的,而且要求密码为6位数字,那么可以这么来做。
#!/bin/bash #Auth:jarson #Date:2010-3-18 [ $USER != 'root' ]&&exit 1 for i in `cat /user.txt` do USER=`echo $i|cut -f1 -d:` PASS=`echo $[$RANDOM*2+100000]` #再次调用了bash里面的random来产生随机数,后面加100000可以保证数字有6位 if id $USER &>/dev/null then echo "The user $USER is exist!" else useradd $USER echo $PASS|passwd --stdin $USER echo "username is $USER, and password is $PASS">>/root/usercreate.log fi done