shell腳本批量創建用戶


#!/bin/bash
DATE=$(date +%F_%T)
USER_FILE=user.txt
echo_color() {
    if [ $1 == "green" ];then
        echo -e "\033[32;40m$2\033[0m"
    elif [ $1 == "red" ];then
        echo -e "\033[31;40m$2\033[0m"
    fi
}
#如果用戶文件存在並大小大於0就備份
if [ -s $USER_FILE ];then
    mv $USER_FILE ${USER_FILE}_${DATE}.bak
    echo_color green "$USER_FILE exist,rename ${USER_FILE}_${DATE}.bak"
fi
echo -e "User\tPaassword" >> $USER_FILE
echo "--------------------" >> $USER_FILE
for USER in user{1..10};do
    if ! id $USER &>/dev/null; then
        PASS=$(echo $RANDOM | md5sum | cut -c 1-8)
        useradd $USER
        echo $PASS |passwd --stdin $USER &>/dev/null
        echo -e "$USER\t$PASS" >> $USER_FILE
        echo "$USER User create successful."
    else
        echo_color red "$USER User already exists!"
    fi
done

 其中用到的知識點:

  echo $RANDOM 隨機生成一串數字

  md5sum將某串數字或字符轉成長串字符

  cut -c 1-8 取1到8位字符


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM