用脚本写带选项的用户脚本

用脚本写带选项的用户

要求如下:

  1. 只支持三个选项 ‘–del’ ‘–add’ –help输入其他选项报错。
  2. 使用‘–add’需要验证用户名是否存在,存在则反馈存在。且不添加。 不存在则创建该用户,切>添加与该用户名相同的密码。并且反馈。
  3. 使用‘–del’ 需要验证用户名是否存在,存在则删除用户及其家目录。不存在则反馈该用户不存>在。
  4. –help 选项反馈出使用方法
  5. 支持以,分隔 一次删除多个或者添加多个用户。
  6. 能用echo $? 检测脚本执行情况 成功删除或者添加为0,报错信息为其他数字。
  7. 能以,分割。一次性添加或者 删除多个用户。 例如 adddel.sh –add user1,user2,user3…….
  8. 不允许存在明显bug。
#!/bin/bash

if [ $# -eq 0 -o $# -gt 2 ]
then
    echo -e "使用方法: "
    echo -e "$0 --add username" 
    echo -e "$0 --del username" 
    echo -e "$0 --help"
    exit 1
fi

case $1 in
    --add)
        n=0
        for u in `echo $2|sed 's/,/ /g'`; do
            if awk -F: '{print $1}' /etc/passwd |grep -qw "$u"
            then
               echo "用户 $u 已存在!!!"
            else
                useradd $u
                echo -e "$u\n$u"|passwd $u >/dev/null 2>&1
                echo "用户 $u 添加成功!!!"
                n=$[$n+1]
            fi
        done

        if [ $n -eq 0 ]; then
        	echo "使用[--help]获得帮助"
            exit 2
        fi
        ;;

    --del)
        n=0
        for u in `echo $2|sed 's/,/ /g'`; do
            if awk -F: '{print $1}' /etc/passwd|grep -qw "$u"
            then
               userdel -r $u
                echo "用户 $u 删除成功!!!"
                n=$[$n+1]
            else
                echo "用户 $u 不存在!!!"
            fi
        done

        if [ $n -eq 0 ]; then
                exit 3
        fi
        ;;

    --help)
        echo -e "[--add]\t创建用户且密码与用户名相同"
    	echo -e "\t语法 :--add user1,user2,user3...\n"
        echo -e "[--del]\t删除用户"
        echo -e "\t语法 :--del user1,user2,user3...\n"
        echo -e "[--help]\t获得帮助"
        ;;

    *)
    	echo -e "使用方法: "
   	 	echo -e "$0 --add username" 
    	echo -e "$0 --del username" 
    	echo -e "$0 --help"
        exit 1
        ;;
esac

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值