Advertisement
Guest User

Untitled

a guest
Apr 17th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. #!/bin/bash
  2. usuarios="/etc/passwd"
  3. id=$(id -u)
  4. if [ "$id" != "0" ]
  5. then
  6. echo "Este script necesita privilegios de administracion"
  7. exit 1
  8. fi
  9.  
  10. if [ $# -ne 2 ]
  11. then
  12. echo "Numero incorrecto de parametros"
  13. elif [ $1 = "-a" ]
  14. then
  15. while read -r line
  16. do
  17. user=$(echo "$line" | cut -d "," -f 1)
  18. pass=$(echo "$line" | cut -d "," -f 2)
  19. name=$(echo "$line" | cut -d "," -f 3)
  20. if [ -n "$user" -a -n "$pass" -a -n "$name" ]
  21. then
  22. actual=$(grep "^$user:" "$usuarios")
  23. if [ -n "$actual" ]
  24. then
  25. echo "El usuario "$user" ya existe"
  26. else
  27. useradd -U -m -k "/etc/skel" -c "$name" -p "$pass" "$user"
  28. chage -M 30 "$user"
  29. echo ""$name" ha sido creado."
  30. fi
  31. else
  32. echo "Campo invalido"
  33. exit 1
  34. fi
  35. done > "$2"
  36. elif [ $1 = "-s" ]
  37. then
  38. while read -r line
  39. do
  40. user=$(echo "$line" | cut -d "," -f 1)
  41. if [ -n "$user" ]
  42. then
  43. actual=$(grep "^$user:" "$usuarios")
  44. if [ -n "$actual" ]
  45. then
  46. if [ ! -d "/extra" ]
  47. then
  48. mkdir /extra
  49. if [ ! -d "/extra/backup" ]
  50. then
  51. mkdir /extra/backup
  52. fi
  53. fi
  54. if $(tar -cf "$user".tar -C /extra/backup /home/$user)
  55. then
  56. userdel -r "$user" > /dev/null 2>&1
  57. echo ""$user" ha sido borrado."
  58. fi
  59. fi
  60. else
  61. echo "Campo invalido"
  62. exit 1
  63. fi
  64. done < "$2"
  65. else
  66. echo "Opcion invalida" >&2
  67. exit 1
  68. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement