shell腳本之批量添加用戶

   沒錯,這是一個簡單的腳本,不寫不知道,寫了才發現自己有多少不足。

    下面的腳本主要用於批量添加用戶的腳本,本來很簡單的腳本,但是添加了一些判斷,驗證自己學習。

    1.判斷用戶輸入是否有誤

    2.判斷用戶是否存在,存在就跳過不再處理



代碼如下:

#/bin/bash
#批量添加用戶腳本
 
#判斷用戶是否存在函數
function panduan()
    {
        for nametmp in $(cat /tmp/user.txt)
            do
                if [ $nametmp = $1 ]
                    then
                        return 6
                        break
                fi
            done
    }
cat /etc/passwd|awk -F : '{print $1}'&>>/tmp/user.txt
#讀取用戶輸入信息
read -p "請輸入前綴:" name
read -p "請輸入個數:" num
read -p "請輸入初始密碼:" password
 
#判斷輸入是否爲空
if [ -z "$name" -o -z "$num" -o -z "$password" ]
    then
        echo "輸入不能爲空"
    else
#判斷用戶個數是否格式爲數字,不爲數字就退出 
    echo $num|grep ^[0-9]*$&>/dev/null
    if [ $? -eq 0 ]
        then
            for i in `seq 1 $num`
                do
 
#判斷用戶是否存在
                    panduan $name$i&>/dev/null
                    if [ $? -ne 6 ]
                        then
                        useradd $name$i>>/dev/null
                        echo "$password"|passwd --stdin $name$i>>/dev/null
                        echo "用戶名:$name$i   密碼:$password  創建成功"
                    else 
                        echo "用戶$name$i存在,不做處理"
                         
                    fi
            done
        else
            echo "用戶個數輸入有誤,請輸入數字"
    fi
                 
fi

請求大家指教一下,有沒有更簡單的方法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章