zoukankan      html  css  js  c++  java
  • shell脚本-批量添加用户

    批量添加用户,要求如下

    脚本一:不是很严格但是很简洁的脚本

    #!/bin/bash

     #该脚本用来实现批量添加用户。
      #
      #作者阿鑫
      #日期2019/5/27
      #版本v1

    
    #提示用户脚本使用方法
    [ $# -eq 0 ] && echo "Usage useradd.sh number" && exit
    #判断是否存在/data/user_passwd,若存在则移动该文件,做备份。
    if [ -f /data/user_passwd ];then
            mv /data/user_passwd /data/user_passwd.bak-`date +%F`
    else
            echo "hello" > /dev/null
    fi
    ##使用for循环创建用户
    ##passwd从标准输入读取密码,并使用tee命令保存密码到/data/user_passwd
    for (( i=1;i<=$1;i++ ));do
            useradd -g users user_$i
            echo ` openssl  rand -base64  8 ` | tee -a /data/user_passwd | passwd user_$i --stdin
    done

    脚本二:在脚本一中密码可以使用专门的密码命令mkpasswd,实现更丰富的密码规则。

        并且脚本一也存在一个问题,就是用户名要求为user01的格式。

        /data/user_passwd只保存了秘密没有保存用户名。

        脚本二解决了这些问题

    #!/bin/bash
    #该脚本用来实现批量添加用户。
    #作者阿鑫
    #日期2019/5/27
    #版本v1
    
    #查看是否安装了mkpasswd命令
    which mkpasswd &>/dev/null || yum install -y mkpasswd
    
    #提示用户脚本使用方法
    [ $# -eq 0 ] && echo "Usage useradd.sh number" && exit
    
    #判断是否存在/data/user_passwd,若存在则移动该文件,做备份。
    if [ -f /data/user_passwd ];then
            mv /data/user_passwd /data/user_passwd.bak-`date +%F`
    else
            echo "hello" > /dev/null
    fi
    
    ##使用for循环创建用户
    ##passwd从标准输入读取密码,并使用tee命令保存密码到/data/user_passwd
    for i in `seq 99`;do
            useradd -g users user_$i
            pass=`mkpasswd -l 12 -s 0`
            echo $pass | passwd  --stdin user_$i
            echo "user_$i $pass" >> /data/user_passwd
    done
    
    #单独创建用户user_100
    useradd -g users user_100
    echo 'mkpasswd -l 12 -s 0' | tee -a /data/user_passwd | passwd user_100 --stdin
    
    echo “用户创建完成”,密码保存在/data/user_passwd

     

  • 相关阅读:
    1013 数素数
    1012 数字分类
    1010 一元多项式求导
    react-dnd 介绍及使用,react-dnd实现拖拽效果,
    FormData用法详解 var formdata=new FormData();
    【原生】js,setInterval,clearInterval
    <a>标签中的href="javascript:;"是什么意思?
    【git】 log git历史 记录
    CSS3 calc() 函数,width: calc(100%
    字符串截取,方法,slice,substring,substr。
  • 原文地址:https://www.cnblogs.com/wxxjianchi/p/13620855.html
Copyright © 2011-2022 走看看