shell批量创建用户

#!/bin/bash
 
cat << EOF
************************************************************
    批量添加用户并随机生成8个字符串作为其密码
        www.tianfeiyu.com
************************************************************
EOF
 
admin=feiyu     #定义所要添加用户的前缀名
 
[ -f /etc/init.d/functions ] && . /etc/init.d/functions || exit
 
 
for n in $(seq -w 10)  
do
    passwd=`echo $(date +%t%N)$RANDOM|md5sum|cut -c 1-8`   #生成随机密码
    id ${admin}-$n &> /dev/null                    #判断用户是否存在
    [ $? -ne 0 ] && {
        useradd ${admin}-$n &> /dev/null && user_status=$?
        echo "$passwd"|passwd --stdin ${admin}-$n &> /dev/null && passwd_status=$?
    
        if [ "$user_status" == 0 -a "$passwd_status" == 0 ];then
            action "adduser ${admin}-$n" /bin/true
            echo -e "user:\t ${admin}-$n \t passwd:\t $passwd" >> ./user.txt  
        else
            action "adduser ${admin}-$n" /bin/false
            echo -e "user:\t ${admin}-$n \t passwd:\t $passwd" >> ./fail_user.txt
        fi
    } || 
    action "${admin}-$n is exist!" /bin/false
done

此脚本批量添加用户,将所添加用户的用户名和密码保存于当前目录下的user.txt 文件中。

 

 

 

简单版

 

posted @ 2019-09-26 23:57  linux——quan  阅读(1384)  评论(0编辑  收藏  举报