创建一个脚本 admin.sh
完成如下作用:
-h | --help : 提供帮助信息
--add Users : 完成用户添加
-del User | --delete : 完成用户删除
-v : 开启调试模式,显示信息
可以同时使用以上所有命令
#!/bin/bash # DEBUG=0 ADD=0 DELETE=0 for i in `seq 1 $#` do case $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 ;; esac done if [ $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 done fi if [ $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 done fi
随机生成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=$1 if [ $OPREATE == 'add' ] then for((i=0;i<10;i++)) do ADDUSER "eko$i" `openssl rand -base64 10` done elif [ $OPREATE == 'del' ] then for((i=0;i<10;i++)) do DELUSER "eko$i" done else echo "参数错误" fi