批量新增刪除使用者指令碼

2021-12-30 09:56:37 字數 2736 閱讀 3554

#!/bin/bash

# #本指令碼用於批量新增/刪除使用者,使用者初始密碼是123456,首次登陸需要修改密碼

#格式:./class_stu.sh 引數1 引數2 引數3

# 引數1:起始使用者名稱,為純數字編號,長度必須大於6

# 引數2:新增人數[0-999]

# 引數3:操作:1-新增,2-刪除

#例:./class_stu.sh 2009034201 30 1 表示新增從2009034201開始的30個帳號

#    ./class_stu.sh 2009034201 30 2 表示刪除從2009034201開始的30個帳號  

#class_stu.sh

#2011-8-21 lopn

export path=/bin:/sbin:/usr/bin:/usr/sbin

function error()

if [ $# != 3 ]

then

error

exit 1

fi reciveinit1=`echo $1 | grep -e "^[0-9]\$"  `

reciveinit2=`echo $2 | grep -e "^[0-9]\$" `

operater=`echo $3 | grep -e "^[0-9]$"` 

if [ "$1" != "$reciveinit1" ] || [ "$2" != "$reciveinit2" ] || [ "$3" != $3 ]

then

error

exit 1

fi initaccount=$1

curaccount=$initaccount

i=0case $3 in

1)  echo "***************************add user********************************"

echo -n "are you ensure to add?[y|y/n|n]"

read yes

if [ "$yes" == "y" -o "$yes" == "y" ]

then

while [ "$i" != "$2" ]

doecho "**********add user $curaccount **********"

ifexist=`cat /etc/passwd | awk -f : "" | grep $curaccount`

if [ "$ifexist" == "$curaccount" ]

then

echo "***********the user  $curaccount already exists!*********"

echo "********************next*********************"

else

useradd $curaccount

echo "123456" | passwd --stdin $curaccount

chage -d 0 $curaccount

echo "*******the user $curaccount has been add ! ok***********"

fii=$(($i+1))

curaccount=$(($curaccount+1))

done

fi;;

2)  echo "***************************del user********************************"

echo -n "are you ensure to del user?[y|y/n|n]"

read yes

if [ "$yes" == "y" -o "$yes" == "y" ]

then

while [ "$i" != "$2" ]

doecho "*********************del user $curaccount *********************"

ifexist=`cat /etc/passwd | awk -f : "" | grep $curaccount`

if [ "$ifexist" == "$curaccount" ]

then

userdel -r $curaccount

echo "******the user $curaccount has been deleted ! ok********"

else

echo "************the user $curaccount does not  exists!***********"

echo "***********************next!*******************************"

fii=$(($i+1))

curaccount=$(($curaccount+1))

done

fi;;

*)  echo "******************************notice*****************************"

echo "please see the notice clear"

error

;;esac

echo "***********************the operator has been finished!************************"

本文出自 「lopnxrp」 部落格

批量新增刪除使用者指令碼

bin bash 本指令碼用於批量新增 刪除使用者,使用者初始密碼是123456,首次登陸需要修改密碼 格式 class stu.sh 引數1 引數2 引數3 引數1 起始使用者名稱,為純數字編號,長度必須大於6 引數2 新增人數 0 999 引數3 操作 1 新增,2 刪除 例 class stu...

編寫指令碼批量新增 刪除使用者

環境要求 編寫相應指令碼用來批量新增使用者 要求提供互動功能,當管理員執行該指令碼時,可以根據提示指定需新增的使用者數量 少於100 使用者名稱字首 並能夠設定這些使用者賬戶的失效時間,初始密碼 使用者名稱編號統一使用兩位數,如使用 01 02 03 的形式,而不是 1 2 3 的形式。並編寫對應的...

編寫指令碼批量新增 刪除使用者

環境要求 編寫相應指令碼用來批量新增使用者 要求提供互動功能,當管理員執行該指令碼時,可以根據提示指定需新增的使用者數量 少於100 使用者名稱字首 並能夠設定這些使用者賬戶的失效時間,初始密碼 使用者名稱編號統一使用兩位數,如使用 01 02 03 的形式,而不是 1 2 3 的形式。並編寫對應的...