当前位置: 主页 > shell编程 >

shell脚本添加用户删除用户删除文件的脚本实现

时间:2015-04-22 10:33来源:blog.csdn.net 作者:让我们荡起双脚 举报 点击:
[cpp] view plaincopy在CODE上查看代码片派生到我的代码片
 
  1. #/bin/bash  
  2. #  
  3. DEBUG=0  
  4. ADD=0  
  5. DEL=0  
  6. RM=0  
  7. while [ $# -gt 0 ]  
  8. do  
  9. case $1 in   
  10. -v|-verbose)  
  11.     DEBUG=1  
  12.     shift  
  13.     ;;  
  14. -h|--help)  
  15. #帮助文档  
  16.     echo "`basename $0` --add LIST --del LIST -h|--help --rm LIST"  
  17.     exit 0  
  18.     ;;  
  19. --add)  
  20. #添加用户  
  21.     ADD=1  
  22.     ADDUSER=$2  
  23.     shift 2  
  24.     ;;  
  25. --del)  
  26. #删除用户  
  27.     DEL=1  
  28.     DELUSER=$2  
  29.     shift 2  
  30.     ;;  
  31. --rm)  
  32. #删除文件  
  33.     RM=1;  
  34.     RMFILE=$2  
  35.     shift 2  
  36.     ;;  
  37. *)  
  38.     echo "wrong"  
  39.     shift  
  40.     ;;  
  41. esac  
  42. done  
  43.   
  44. if test $RM -eq 1;then  
  45. #$RM=1,则选择的是--rm命令,RMFILE是--rm后面接的需要操作文件。  
  46.     for I in `echo $RMFILE | sed 's/,/ /g'`;do  
  47. #sed 's/,/ /g' 或者 's@,@ @g' 将RMFILE里面的“,”去掉,因为你可能删除多个文件。  
  48.         if test -e $I;then  
  49. #-e判断该文件是否存在,然后-f是一般文件,-d是目录文件。  
  50.                 [ -f $I ] && rm -r $I  
  51.                 [ -d $I ] && rm -rf $I  
  52.                 [ $DEBUG -eq 1 ] && echo "删除该文件成功"  
  53.             else  
  54.                 [ $DEBUG -eq 1 ] && echo '该文件不存在!'        
  55.         fi  
  56.   done  
  57. fi  
  58.   
  59. if test $ADD -eq 1;then  
  60.     for I in `echo $ADDUSER | sed 's/,/ /g'`;do  
  61.         if id $I &>/dev/null;then  
  62.             [ $DEBUG -eq 1 ] && echo "用户名是$I的用户已经存在,不能添加为新用户"  
  63.         else  
  64.             sudo useradd $I  
  65.             [ $DEBUG -eq 1 ] && echo "新用户$I添加成功"              
  66.     fi  
  67.         done  
  68. fi  
  69.   
  70.   
  71. if test $DEL -eq 1;then  
  72.     for I in `echo $DELUSER | sed 's/,/ /g'`;do  
  73.         if id $I &>/dev/null;then  
  74.             sudo userdel  $I  
  75.             [ $DEBUG -eq 1 ] && echo "删除$I用户成功"  
  76.         else  
  77.             [ $DEBUG -eq 1 ] && echo "用户$I不存在,不能删除"  
  78.         fi  
  79.     done  
  80. fi  
------分隔线----------------------------
发表评论
为了和诣的生活,我关闭了评论页面,请大家到QQ群里交流吧:348944156,也欢迎关注本站微信公众号:centoscn
栏目分类