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

分类:shell编程 阅读:60628 次

  1. #/bin/bash
  2. #
  3. DEBUG=0
  4. ADD=0
  5. DEL=0
  6. RM=0
  7. while[$#-gt0]
  8. do
  9. case$1in
  10. -v|-verbose)
  11. DEBUG=1
  12. shift
  13. ;;
  14. -h|--help)
  15. #帮助文档
  16. echo"`basename$0`--addLIST--delLIST-h|--help--rmLIST"
  17. exit0
  18. ;;
  19. --add)
  20. #添加用户
  21. ADD=1
  22. ADDUSER=$2
  23. shift2
  24. ;;
  25. --del)
  26. #删除用户
  27. DEL=1
  28. DELUSER=$2
  29. shift2
  30. ;;
  31. --rm)
  32. #删除文件
  33. RM=1;
  34. RMFILE=$2
  35. shift2
  36. ;;
  37. *)
  38. echo"wrong"
  39. shift
  40. ;;
  41. esac
  42. done
  43. iftest$RM-eq1;then
  44. #$RM=1,则选择的是--rm命令,RMFILE是--rm后面接的需要操作文件。
  45. forIin`echo$RMFILE|sed's/,//g'`;do
  46. #sed's/,//g'或者's@,@@g'将RMFILE里面的“,”去掉,因为你可能删除多个文件。
  47. iftest-e$I;then
  48. #-e判断该文件是否存在,然后-f是一般文件,-d是目录文件。
  49. [-f$I]&&rm-r$I
  50. [-d$I]&&rm-rf$I
  51. [$DEBUG-eq1]&&echo"删除该文件成功"
  52. else
  53. [$DEBUG-eq1]&&echo'该文件不存在!'
  54. fi
  55. done
  56. fi
  57. iftest$ADD-eq1;then
  58. forIin`echo$ADDUSER|sed's/,//g'`;do
  59. ifid$I&>/dev/null;then
  60. [$DEBUG-eq1]&&echo"用户名是$I的用户已经存在,不能添加为新用户"
  61. else
  62. sudouseradd$I
  63. [$DEBUG-eq1]&&echo"新用户$I添加成功"
  64. fi
  65. done
  66. fi
  67. iftest$DEL-eq1;then
  68. forIin`echo$DELUSER|sed's/,//g'`;do
  69. ifid$I&>/dev/null;then
  70. sudouserdel$I
  71. [$DEBUG-eq1]&&echo"删除$I用户成功"
  72. else
  73. [$DEBUG-eq1]&&echo"用户$I不存在,不能删除"
  74. fi
  75. done
  76. fi