#/bin/bash # DEBUG=0 ADD=0 DEL=0 RM=0 while [ $# -gt 0 ] do case $1 in -v|-verbose) DEBUG=1 shift ;; -h|--help) #帮助文档 echo "`basename $0` --add LIST --del LIST -h|--help --rm LIST" exit 0 ;; --add) #添加用户 ADD=1 ADDUSER=$2 shift 2 ;; --del) #删除用户 DEL=1 DELUSER=$2 shift 2 ;; --rm) #删除文件 RM=1; RMFILE=$2 shift 2 ;; *) echo "wrong" shift ;; esac done if test $RM -eq 1;then #$RM=1,则选择的是--rm命令,RMFILE是--rm后面接的需要操作文件。 for I in `echo $RMFILE | sed 's/,/ /g'`;do #sed 's/,/ /g' 或者 's@,@ @g' 将RMFILE里面的“,”去掉,因为你可能删除多个文件。 if test -e $I;then #-e判断该文件是否存在,然后-f是一般文件,-d是目录文件。 [ -f $I ] && rm -r $I [ -d $I ] && rm -rf $I [ $DEBUG -eq 1 ] && echo "删除该文件成功" else [ $DEBUG -eq 1 ] && echo '该文件不存在!' fi done fi if test $ADD -eq 1;then for I in `echo $ADDUSER | sed 's/,/ /g'`;do if id $I &>/dev/null;then [ $DEBUG -eq 1 ] && echo "用户名是$I的用户已经存在,不能添加为新用户" else sudo useradd $I [ $DEBUG -eq 1 ] && echo "新用户$I添加成功" fi done fi if test $DEL -eq 1;then for I in `echo $DELUSER | sed 's/,/ /g'`;do if id $I &>/dev/null;then sudo userdel $I [ $DEBUG -eq 1 ] && echo "删除$I用户成功" else [ $DEBUG -eq 1 ] && echo "用户$I不存在,不能删除" fi done fi