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

2021-09-03 10:46:56 字數 1686 閱讀 4560

環境要求:

編寫相應指令碼用來批量新增使用者;

要求提供互動功能,當管理員執行該指令碼時,可以根據提示指定需新增的使用者數量(少於100)、使用者名稱字首、並能夠設定這些使用者賬戶的失效時間,初始密碼;

使用者名稱編號統一使用兩位數,如使用」01」、」02」、」03」的形式,而不是」1」、」2」、」3」的形式。

並編寫對應的批量刪除使用者指令碼,要能夠通過命令列引數指定使用者名稱字首,執行指令碼後刪除所有使用了該字首的使用者賬戶,但要防止刪除root使用者。

批量新增使用者指令碼

1、新建批量新增使用者指令碼useradd.sh

截圖如下:

內容如下:

#!/bin/bash

read-p"input nu <1-99>:"nu

read-p"input name:"name

read-p"input date :" date

read-p"input password:"password

a=1if[ $nu -lt 100 ]

then

while[ $a -le $nu ]

do if[ $a -lt 10 ]

then

useradd-e $date "$name"0"$a"

echo "$passwd" | --stdin "$name"0"$a"&> /dev/null

else

useradd-e $date "$name""$a"

echo "password" | passwd --stdin "$name""$a"&> /dev/null

fi a=`expr $a + 1`

done

fi 2、給指令碼useradd.sh增加x許可權

3、執行指令碼useradd.sh,新增以hello和www為字首的使用者:

4、驗證結果:檢視/etc/passwd檔案是否添了新使用者:

tail -16/etc/passwd 

批量刪除使用者

1、批量刪除使用者指令碼userdel.sh

截圖如下:

內容如下:

#!/bin/bash

if [ $# -le 0 ]

then

echo"error:the prefix of users has not be specified."

echo"usage:$0nameprefix"

exit1

fi tar jcvf /root/usrs.cnf.tar.gz /etc/passwd /etc/shadow /etc/group &> /dev/null

usersdel=`grep "$1" /etc/passwd | cut -d ":" -f 1 | grep -v "root"`

for u in $usersdel

do userdel -r $u &> /dev/null

done 

2、給指令碼userdel.sh增加x許可權:

3、執行指令碼userdel.sh,刪除上邊新建使用者。如userdel.sh  hello 或userdel.sh  www

4、驗證結果:檢視/etc/passwd檔案中已刪除的使用者是否還存在。發現只剩系統服務使用者。

總結:批量新建使用者,在實際生產環境中有很多種方法,不只for語句一種新增方式。

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

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

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

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

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

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