创建一个脚本 admin.sh
完成如下作用:
-h | --help : 提供帮助信息
--add Users : 完成用户添加
-del User | --delete : 完成用户删除
-v : 开启调试模式,显示信息
可以同时使用以上所有命令
#!/bin/bash#DEBUG=0ADD=0DELETE=0for i in `seq 1 $#`docase $1 in-h|--help) echo "--v --help --add --delete --userlist" ;;-v|--versbo) DEBUG=1 shift ;;--add) ADD=1 ADDUSERS=`echo $2 | sed 's@,@ @g'` shift 2 ;;-del|--delete) DELETE=1 DELETEUSERS=`echo $2 | sed 's@,@ @g'` shift 2 ;;*)# echo 'Usage : `basename $0` --add USERLIST --delete USERLIST --v|--verbose --help'# exit 7 ;;esacdoneif [ $ADD -eq 1 ]then for USER in $ADDUSERS do if id $USER &> /dev/null then [ $DEBUG -eq 1 ] && echo "$USER is exists!" else useradd $USER [ $DEBUG -eq 1 ] && echo "$USER add succefully!" fi donefiif [ $DELETE -eq 1 ]then for USER in $DELETEUSERS do if id $USER &> /dev/null then userdel $USER [ $DEBUG -eq 1 ] && echo "$USER delete successfully!" else [ $DEBUG -eq 1 ] && echo "$USER not exist!" fi donefi
随机生成10个用户,并随机生成10位密码,把生成后的用户名和密码保存到文件
ADDUSER(){ USER=$1 PASSWD=$2 useradd $1 && echo $1:$2 | chpasswd echo User:$1 pass:$2 >> /home/eko/test/user.log}DELUSER(){ USER=$1 userdel $1}OPREATE=$1if [ $OPREATE == 'add' ]then for((i=0;i<10;i++)) do ADDUSER "eko$i" `openssl rand -base64 10` doneelif [ $OPREATE == 'del' ]then for((i=0;i<10;i++)) do DELUSER "eko$i" doneelse echo "参数错误"fi