新增多個使用者的shell指令碼

首席提問官發表於2018-10-15

本指令碼來自有學習阿銘的博文學習:
在這裡自己動手寫一次,連續一下指令碼的編寫。

#!/bin/bash 
#批量新增N個使用者,user01-userN 
#作者:Caron 

# 日期: 2018年10月16日 
# 版本:v0.1 

#檢查是否有mkpasswd命令 
#如果沒有該命令多需要安裝expect包 
if ! which mkpasswd &>/dev/null 
then 
    echo"沒有mkpasswd命令,安裝該命令: "
    yum install -y expect 
fi


#判斷/data/user_passwd檔案是否已經存在 
#若存在,應該先刪除
[  -f  /data/user_passwd ] && rm -f /data/passwd
# if  [ -f  /data/user_passwd  ]
# then
#       rm -f  /data/user_passwd
#fi


#因為要建立N個使用者,所以只能遍歷到N-1 
 for  n in `seq -w 1  N-1` 
  do
    pass=`mkpasswd -l 12 -s 0` 
    echo "新增使用者user_$n" 
    useradd  -g users user_$n 
    
    echo  "給使用者user_$n設定密碼" 
    echo $pass | passwd --stdin user_$n 
    echo  "user_$n $ pass" >>/data/user_passwd 
done 

    pass=`mkpass -l 12 -s 0`
    echo "新增使用者user_100"
    useradd -g users user_N
    echo "給使用者user_N設定密碼"
    echo $pass |passwd --stdin user_N
    echo "user_N  $pass" >>/data/user_passwd    


相關文章